1、第2练以下题目在实验室上机完成,并用程序评测系统评测上机成绩。打开相关源程序后,只能在/*与/=之间编写程序,若修改源程序的其它部分,可能得0分。第一套A. 教师示范题(C4_1A.cpp)【题目描述】一维数组a中有10个整数,编写一个程序输出这组数中的最大值。【输入】输入文件C4_1A.in有1行,包含10个整数,整数之间用空格隔开。【输出】输出文件C4_1A.out有1行,包含1个整数,即数组a中最大值。【输入输出样例1】C4_1A.inC4_1A.out8 67 29 59 11 53 69 37 26 9191【输入输出样例2】C4_1A.inC4_1A.out3 21 5 98 44
2、 12 1 1 67 6198【数据限制】0ai200#include int main()int a10;int i,max;freopen(C4_1A.in, r, stdin);freopen(C4_1A.out, w, stdout);for (i=0;i10;i+)scanf(%d,&ai);/* /一维数组a中有10个整数,编写一个程序输出这组数中的最大值。max=a0;for(i=0;i10;i+)if(maxai)max=ai;/=printf(%d,max);return 0;B. 学生模拟题(C4_1B.cpp)【题目描述】一维数组a中有20个整数,编写一个程序输出这组数中
3、的最小值。【输入】输入文件C4_1B.in有1行,包含20个整数,整数之间用空格隔开。【输出】输出文件C4_1B.out有1行,包含1个整数,即数组a中最小值。【输入输出样例1】C4_1B.inC4_1B.out3 21 5 98 44 12 64 77 66 96 76 67 61 2 13 16 9 78 56 692【输入输出样例2】C4_1B.inC4_1B.out79 88 35 157 89 76 35 58 65 90 73 36 47 98 55 65 70 38 93 15235【数据限制】0ai200#include int main()int a20;int i,min;
4、freopen(C4_1B.in, r, stdin);freopen(C4_1B.out, w, stdout);for (i=0;i20;i+)scanf(%d,&ai);/*/一维数组a中有20个整数,编写一个程序输出这组数中的最小值。min=a0;for(i=0;iai)min=ai;/=printf(%d,min);return 0;C. 拓展题(C4_1C.cpp)【题目描述】一维数组a中有10个整数,编写一个程序输出这组数中的平均值并求有多少个数超过平均值。【输入】输入文件C4_1C.in有1行,包含10个整数,整数之间用空格隔开。【输出】输入文件C4_1C.in有1行,包含2个
5、数,分别是平均值(保留一位小数)和超过平均值的个数,两个数之间用空格隔开。【输入输出样例1】C4_1C.inC4_1C.out57 89 76 35 58 65 90 73 36 4762.6 5【输入输出样例2】C4_1C.inC4_1C.out98 44 12 64 5 66 2 76 67 6149.5 6【数据限制】0ai200#include int main()int a10;int i,sum;float avg;freopen(C4_1C.in, r, stdin);freopen(C4_1C.out, w, stdout);for (i=0;i10;i+)scanf(%d,&
6、ai);/*/一维数组a中有10个整数,编写一个程序输出这组数中的平均值并求有多少个数超过平均值。sum=0;for(i=0;i10;i+)sum+=ai;avg=sum/(i*1.0);/保留一位小数sum=0;for(i=0;iavg)sum+;/=printf(%3.1f %d,avg,sum);return 0;第二套A. 教师示范题(C4_2A.cpp)【题目描述】一维数组a中有n(0n100)个整数,编写一个程序将数组a中第k个(0kn-1)元素删除。【输入】输入文件C4_2A.in有2行,第1行有2个整数分别表示n和k,整数之间用空格隔开;第2行有n个整数表示数组a中的各个元素,
7、整数之间用空格隔开。【输出】输出文件C4_2A.out有1行,包含n-1个整数,即删除后数组中的各个元素,整数之间用空格隔开。【输入输出样例1】C4_2A.inC4_2A.out10 523 21 5 98 19 12 6 10 8 6123 21 5 98 19 6 10 8 61【输入输出样例2】C4_2A.inC4_2A.out20 1123 21 5 98 19 12 6 10 8 61 89 67 56 34 56 32 67 87 45 3223 21 5 98 19 12 6 10 8 61 89 56 34 56 32 67 87 45 32【数据限制】0ai100#inclu
8、de int main()int a100=0;int n,i,k;freopen(C4_2A.in, r, stdin);/freopen(C4_2A.out, w, stdout);scanf(%d%d,&n,&k);for (i=0;in;i+)scanf(%d,&ai);/*/一维数组a中有n(0n100)个整数,编写一个程序将数组a中第k个(0kn-1)元素删除。for(i=k;in;i+)ai=ai+1;for(i=0;in-1;i+)printf(%d ,ai);/=return 0;B. 学生模拟题(C4_2B.cpp)【题目描述】一维数组a中有n(0n99)个整数,编写一个程
9、序在数组a中第k位置(0kn-1)插入一个元素d。【输入】输入文件C4_2B.in有2行,第1行有3个整数分别表示n、k和d,整数之间用空格隔开;第2行有n个整数表示数组a中的各个元素,整数之间用空格隔开。【输出】输出文件C4_2B.out有1行,包含n+1个整数,即插入后数组中的各个元素,整数之间用空格隔开。【输入输出样例1】C4_2B.inC4_2A.out10 5 7823 21 5 98 19 12 6 10 8 6123 21 5 98 19 78 12 6 10 8 61【输入输出样例2】C4_2B.inC4_2B.out20 16 9123 21 5 98 19 12 6 10
10、8 61 89 67 56 34 56 32 67 87 45 3223 21 5 98 19 12 6 10 8 61 89 67 56 34 56 32 91 67 87 45 32【数据限制】0ai100#include int main()int a100=0;int n,i,k,d;freopen(C4_2B.in, r, stdin);freopen(C4_2B.out, w, stdout);scanf(%d%d%d,&n,&k,&d);for (i=0;i=k;i-)ai+1=ai;if(i=k)ai=d;for(i=0;in+1;i+)printf(%d ,ai);/=ret
11、urn 0; C. 拓展题(C4_2C.cpp)【题目描述】一维数组a中有n(0n100)个整数,编写一个程序将数组a中所有值为d的元素删除。【输入】输入文件C4_2C.in有2行,第1行有2个整数分别表示n和d,整数之间用空格隔开;第2行有n个整数表示数组a中的各个元素,整数之间用空格隔开。【输出】输出文件C4_2C.out有1行,即删除后数组中的各个元素,整数之间用空格隔开。【输入输出样例1】C4_2C.inC4_2C.out10 2123 21 5 98 19 21 6 10 8 6123 5 98 19 6 10 8 61【输入输出样例2】C4_2C.inC4_2C.out20 562
12、3 21 5 98 56 12 6 10 8 61 89 67 56 34 56 56 67 87 45 3223 21 5 98 12 6 10 8 61 89 67 34 67 87 45 32【数据限制】0ai100#include int main()int a100=0;int n,i,j,d,m;freopen(C4_2C.in, r, stdin);freopen(C4_2C.out, w, stdout);scanf(%d%d,&n,&d);for (i=0;in;i+)scanf(%d,&ai);/*/一维数组a中有n(0n100)个整数,编写一个程序将数组a中所有值为d的元
13、素删除。for(i=0;in;i+)if(ai=d)for(j=i;jn-1;j+)aj=aj+1;n-;i-;for(i=0;in;i+)printf(%d ,ai);/*for(i=0;in;i+)if(ai!=d)printf(%d,ai);if(i!=n-1)printf( );*/*j=0;for(i=0;in;i+) if(ai!=d)aj=ai;j+; for(i=0;ij;i+) printf(%d ,ai); */=return 0;第三套A. 教师示范题(C4_3A.cpp)【题目描述】有一个4行5列的二维数组b,编写一个程序计算每一行的总和,并将此和顺序存放在一个长度为4
14、的一维数组中,最后按顺序输出该一维数组。【输入】输入文件C4_3A.in有4行,每行有5个整数,整数之间用空格隔开。【输出】输出文件C4_3A.out有1行,包含4个整数,即每行的总和,整数之间用空格隔开。【输入输出样例1】C4_3A.inC4_3A.out3 21 5 98 1044 12 1 12 867 61 45 67 1735 36 78 90 19137 77 257 258【输入输出样例2】C4_3A.inC4_3A.out13 21 55 98 47 12 18 19 67 6189 90 36 78 1089 87 67 90 12234 177 303 345【数据限制】0
15、bij100B. 学生模拟题(C4_3B.cpp)【题目描述】有一个4行5列的二维数组b,编写一个程序计算每一列的总和,并将此和顺序存放在一个长度为5的一维数组中,最后按顺序输出该一维数组。【输入】输入文件C4_3B.in有4行,每行有5个整数,整数之间用空格隔开。【输出】输出文件C4_3B.out有1行,包含5个整数,即每列的总和,整数之间用空格隔开。【输入输出样例1】C4_3B.inC4_3B.out 3 21 5 98 1044 12 1 12 8 67 61 45 67 1735 36 78 90 19149 130 129 267 54【输入输出样例2】C4_3B.inC4_3B.o
16、ut13 21 55 98 47 12 18 19 67 6189 90 36 78 1089 87 67 90 12203 216 177 333 130【数据限制】0bij100 #include int main()int b45,a5=0;int i,j;freopen(C4_3B.in, r, stdin);freopen(C4_3B.out, w, stdout);for (i=0;i4;i+)for (j=0;j5;j+)scanf(%d,&bij);/*/有一个4行5列的二维数组b,编写一个程序计算每一列的总和,并将此和顺序存放在一个长度为5的一维数组中,/最后按顺序输出该一维
17、数组。for(i=0;i4;i+)for(j=0;j5;j+)aj+=bij;for(i=0;i5;i+)printf(%d ,ai);/=return 0;C. 拓展题(C4_3C.cpp)【题目描述】有一个5行5列的矩阵(即二维数组b),要求以主对角线为对称线,将对称元素相加并将结果存放在下三角元素中,右上三角元素置为0。【输入】输入文件C4_3C.in有5行,每行有5个整数,整数之间用空格隔开。【输出】输出文件C4_3C.out有5行,每行有5个整数,整数之间用空格隔开。【输入输出样例1】C4_3C.inC4_3C.out23 21 15 68 1044 12 10 12 28 67 6
18、1 45 19 1730 36 78 70 1945 17 28 36 2323 0 0 0 0 65 12 0 0 0 82 71 45 0 0 98 48 97 70 0 55 45 45 55 23 【输入输出样例2】C4_3C.inC4_3C.out10 20 30 21 2212 18 19 67 6129 60 36 15 1022 27 17 10 1213 21 55 21 4710 0 0 0 0 32 18 0 0 0 59 79 36 0 0 43 94 32 10 0 35 82 65 33 47 【数据限制】0bij100 #include int main()int
19、 b55;int i,j;freopen(C4_3C.in, r, stdin);freopen(C4_3C.out, w, stdout);for (i=0;i5;i+)for (j=0;j5;j+)scanf(%d,&bij);/*/有一个5行5列的矩阵(即二维数组b),要求以主对角线为对称线,将对称元素相加并将结果存放在下三角元素中,/右上三角元素置为0。for(i=0;i=3;i+)for(j=i+1;j5;j+)bji+=bij;bij=0;for(i=0;i=4;i+)for(j=0;j=4;j+)printf(%d,bij);if(j!=4)printf( );printf(n);/=return 0; (注:专业文档是经验性极强的领域,无法思考和涵盖全面,素材和资料部分来自网络,供参考。可复制、编制,期待你的好评与关注)