实验五 数组及应用

This commit is contained in:
xtaodada 2021-11-17 20:00:07 +08:00
parent 741be5cbc3
commit 2bd982ce11
No known key found for this signature in database
GPG Key ID: EE4DC37B55E24736
12 changed files with 296 additions and 0 deletions

1
.gitignore vendored
View File

@ -51,3 +51,4 @@ Module.symvers
Mkfile.old
dkms.conf
.idea/
cmake-build-debug/

26
05/1/1.c Normal file
View File

@ -0,0 +1,26 @@
#include<stdio.h>
int main(){
int n,a[10],temp;
scanf("%d", &n);
for(int i=0; i<n; i++){
scanf("%d", &a[i]);
}
for(int i=0;i<n-1;i++){
for(int j=0;j<n-i-1;j++){
if(a[j]<a[j+1]){
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
for(int i=0;i<n;i++){
printf("%d",a[i]);
if(i != n - 1){printf(" ");}
}
}

38
05/1/README.md Normal file
View File

@ -0,0 +1,38 @@
【问题描述】
输入人数n0≤n≤10再输入n个成绩对成绩降序排序后输出。
【输入形式】
输入n再输入n个数
【输出形式】
按降序输出n个数用空格间隔。最后一个数后没空格。
【样例输入】
```
5
5 3 2 1 4
```
【样例输出】
```
5 4 3 2 1
```
# 运行结果
成功通过编译, 且无编译警告
共有测试数据:2
平均占用内存:1.945K
平均CPU时间:0.00600S
平均墙钟时间:0.00601S
测试数据 评判结果
测试数据1 完全正确
测试数据2 完全正确

28
05/2/2.c Normal file
View File

@ -0,0 +1,28 @@
#include<stdio.h>
int main(){
int n,a[10],max=0,min=0;
scanf("%d", &n);
for(int i=0; i<n; i++){
scanf("%d", &a[i]);
}
for (int i = 0; i < n; ++i) {
if(i==0){
max = a[i];
min = a[i];
}
if(a[i]>max){
max = a[i];
}
if(a[i]<min){
min = a[i];
}
}
printf("%d %d",max,min);
return 0;
}

42
05/2/README.md Normal file
View File

@ -0,0 +1,42 @@
【问题描述】
编写一个程序,用户输入若干整数,试找出其中的最大数和最小数。
【输入形式】
用户在第一行待输入数据个数,在第二行输入数据。
【输出形式】
程序在下一行输出数据的最大值和最小值
【样例输入】
```
5
89 62 96 74 52
```
【样例输出】
```
96 52
```
【样例说明】
用户第一次输入的为数据个数在下一行依次输入数据空格分隔。输出为5个数中的最大值和最小值输出时候两个数之间用空格分隔。
# 运行结果
成功通过编译, 且无编译警告
共有测试数据:3
平均占用内存:1.945K
平均CPU时间:0.00304S
平均墙钟时间:0.00303S
测试数据 评判结果
测试数据1 完全正确
测试数据2 完全正确
测试数据3 完全正确

49
05/3/README.md Normal file
View File

@ -0,0 +1,49 @@
【问题描述】
给一个整型数组中的数按从小到大连续编号要求相同数字编号相同编号从1开始输出编号结果时按照原数组元素的顺序输出。
【输入形式】
从控制台输入数据第一行输入数组元素个数个数大于等于1并且小于等于20第二行输入整型数组元素各个整数之间以空格分隔。
【输出形式】
在屏幕上输出编号结果,各个编号之间用一个空格分隔。
【样例输入】
```
7
-3 75 51 90 1118 51 -3
```
【样例输出】
```
1 3 2 4 5 2 1
```
【样例说明】
共输入了7个整数分别为-3 75 51 90 1118 51 -3其编号分别为1 3 2 4 5 2 1其中有两个-3和51它们的编号相同。
【评分标准】
该题要求输出正确的编号结果。上传C语言文件名为`no.c`。
# 运行结果
成功通过编译, 且无编译警告
共有测试数据:5
平均占用内存:1.946K
平均CPU时间:0.00565S
平均墙钟时间:0.00566S
测试数据 评判结果
测试数据1 完全正确
测试数据2 完全正确
测试数据3 完全正确
测试数据4 完全正确
测试数据5 完全正确

36
05/3/no.c Normal file
View File

@ -0,0 +1,36 @@
#include<stdio.h>
int get_min(int a[20],int n,int temp){
int min=2147483647;
for(int i=0;i<n;i++){
if((a[i]<min)&&(a[i]>temp)){
min=a[i];
}
}
return min;
}
int main(){
int n,a[20],b[20],min=-2147483648;
scanf("%d",&n);
for(int i=0; i<n; i++){
scanf("%d", &a[i]);
}
for(int i=1;i<=n;i++){
min=get_min(a,n,min);
for(int j=0;j<n;j++){
if(a[j]==min){
b[j]=i;
}
}
}
for(int i=0;i<n;i++){
printf("%d ",b[i]);
}
return 0;
}

43
05/4/README.md Normal file
View File

@ -0,0 +1,43 @@
【问题描述】
回文是正读和倒读都一样的句子。读入一个最大长度不超过50个字符的句子判断其是否是回文。
【输入形式】
输入一个最大长度不超过50个字符的句子
【输出形式】
Yes/No
【输入样例】
abcba
【输出样例】
Yes
【样例说明】
输入abcba判断出它是回文。
【评分标准】
该题要求输出一个判断值,答对得20分,每个测试点4分提交程序文件名为c0604.c。
# 运行结果
成功通过编译, 且无编译警告
共有测试数据:5
平均占用内存:1.928K
平均CPU时间:0.00589S
平均墙钟时间:0.00589S
测试数据 评判结果
测试数据1 完全正确
测试数据2 完全正确
测试数据3 完全正确
测试数据4 完全正确
测试数据5 完全正确

20
05/4/c0604.c Normal file
View File

@ -0,0 +1,20 @@
#include<stdio.h>
#include<string.h>
int main(){
int n;
char a[50];
scanf("%s",a);
n=strlen(a)-1;
for(int i=0;i<n;i++){
if(a[i]!=a[n-i]){
printf("No");
return 0;
}
}
printf("Yes");
return 0;
}

3
05/README.md Normal file
View File

@ -0,0 +1,3 @@
# 实验五 数组及应用
> 作业时间: 2021-11-16 19:43:00 至 2021-11-30 23:55:00

5
CMakeLists.txt Normal file
View File

@ -0,0 +1,5 @@
add_executable(1 05/1/1.c)
add_executable(2 05/2/2.c)
add_executable(no 05/3/no.c)
add_executable(c0604 05/4/c0604.c)
add_executable(CMakeLists CMakeLists.txt)

View File

@ -44,3 +44,8 @@ A repo to record my study life.
- [3. 【循环结构】要求输出100200之间的不能被3整除的前10个和最后10个整数](https://github.com/xtaodada/C-study/tree/master/04-1/3)
- [4. 【循环结构】使用循环的嵌套来输出以下4*5的矩阵](https://github.com/xtaodada/C-study/tree/master/04-1/4)
- [5. 【循环结构】输入一个大于3的整数n判定它是否素数(prime又称质数)](https://github.com/xtaodada/C-study/tree/master/04-1/5)
- [实验五 数组及应用](https://github.com/xtaodada/C-study/tree/master/05)
- [1. 排序2](https://github.com/xtaodada/C-study/tree/master/05/1)
- [2. 查找最大最小整数](https://github.com/xtaodada/C-study/tree/master/05/2)
- [3. 给一个整型数组编号a](https://github.com/xtaodada/C-study/tree/master/05/3)
- [4. 回文判断](https://github.com/xtaodada/C-study/tree/master/05/4)