1、全国计算机等级二级C语言上机编程题题型全国计算机等级二级C语言上机编程题题型第1题 函数fun的功能是:将n个人员的考试成绩进行分段统计,考试成绩放在a数组中,各分数段的人数存到b数组中:成绩为60到69的人数存到b0中,成绩为70到79的人数存到b1,成绩为80到89的人数存到b2, 成绩为90到99的人数存到b3,成绩为100的人数存到b4, 成绩为60分以下的人数存到b5中。 例如,当a数组中的数据是: 93、85、77、68、59、43、94、75、98。 调用该函数后,b数组中存放的数据应是: 1、2、1、3、0、2。 注意:部分源程序存在文件PROG1.C中。 请勿改动主函数mai
2、n和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 Prog1.c #include #include void fun(int a, int b, int n) main() int i, a100= 93, 85, 77, 68, 59, 43, 94, 75, 98, b6; clrscr(); fun(a, b, 9); printf(the result is: ); for (i=0; i6; i+) printf(%d , bi); printf(n); NONO(); NONO( ) /* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */
3、 FILE *rf, *wf ; int a100, b6, i, j ; rf = fopen(in1.dat, r) ; wf = fopen(bc01.dat,w) ; for(i = 0 ; i 10 ; i+) for(j = 0 ; j 10 ; j+) fscanf(rf, %d, &aj) ; fun(a, b, 9) ; for(j = 0 ; j 6 ; j+) fprintf(wf, %d , bj) ; fprintf(wf, n) ; fclose(rf) ; fclose(wf) ; 程序参考答案 void fun(int a, int b, int n) int
4、i; for (i=0; i6; i+) bi = 0; for (i=0; i if (ai 60) b5+; else b(ai- 60)/10+; 第2题 函数fun的功能是:统计各年龄段的人数并存到b数组中,n个人员的年龄放在a数组中。年龄为1到9的人数存到b0中,年龄为10到19的人数存到b1,年龄为20到29的人数存到b2, 年龄为30到39的人数存到b3,年龄为40到49的人数存到b4, 年龄为50岁以上的人数存到b5中。 例如,当a数组中的数据为: 9、18、27、38、59、33、14、75、38。 调用该函数后,b数组中存放的数据应是: 1、2、1、3、0、2。 注意:部分
5、源程序存在文件PROG1.C中。 请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 #include #include void fun(int a, int b, int n) main() int i, a100= 9, 18, 27, 38, 59, 33, 14, 75, 38, b6; clrscr(); fun(a, b, 9); printf(The result is: ); for (i=0; i6; i+) printf(%d , bi); printf(n); NONO(); NONO( ) /* 本函数用于打开文件,输入数据,
6、调用函数,输出数据,关闭文件。 */ FILE *rf, *wf ; int a100, b6, i, j ; rf = fopen(in2.dat, r) ; wf = fopen(bc02.dat,w) ; for(i = 0 ; i 10 ; i+) for(j = 0 ; j 10 ; j+) fscanf(rf, %d, &aj) ; fun(a, b, 9) ; for(j = 0 ; j 6 ; j+) fprintf(wf, %d , bj) ; fprintf(wf, n) ; fclose(rf) ; fclose(wf) ; 程序参考答案 void fun(int a,
7、int b, int n) int i; for (i=0; i= 50) b5+; else bai/10+; 第3题 函数fun的功能是:统计在字符串a中,以下指定字符出现的次数,并存到b数组中,其中:字符+出现的次数存到b0中,字符-出现的次数存到b1, 字符*出现的次数存到b2,字符/出现的次数存到b3, 字符&出现的次数存到b4,其它字符出现的次数存到b5中。 例如,当a字符串中的字符串为:-+*1-a/&b时, 调用该函数后,b中存放的数据应是:1、2、1、2、1、3。 注意:部分源程序存在文件PROG1.C中。 请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号
8、中填入你编写的若干语句。 #include #include #include void fun(char *a, int b) main() int i, b6; char a100 = -+*1/-a/&b; clrscr(); fun(a, b); printf(The result is: ); for (i=0; i6; i+) printf(%d , bi); printf(n); NONO(); NONO( ) /* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */ FILE *rf, *wf ; char a100, *p ; int b6, i, j ; r
9、f = fopen(in6.dat, r) ; wf = fopen(bc06.dat,w) ; for(i = 0 ; i 10 ; i+) fgets(a, 99, rf) ; p = strchr(a, n) ; if(p) *p = 0 ; fun(a, b) ; for(j = 0 ; j 6 ; j+) fprintf(wf, %d , bj) ; fprintf(wf, n) ; fclose(rf) ; fclose(wf) ; 程序参考答案 void fun(char *a, int b) int i; for (i=0; i6; i+) bi = 0; for (i=0;
10、i strlen(a); i+) switch(ai) case +: b0+; break; case -: b1+; break; case *: b2+; break; case /: b3+; break; case &: b4+; break; default: b5+; 第4题 函数fun的功能是:把a数组中的n个数和b数组中逆序的n个数一一对应相加,结果存在c数组中。 例如:当a数组中的值是:1、3、5、7、8 b数组中的值是:2、3、4、5、8 调用该函数后,c数组中存放的数据是9、8、9、10、10 注意:部分源程序存在文件PROG1.C中。 请勿改动主函数main和其它函数
11、中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 #include #include void fun(int a, int b, int c, int n) main() int i, a100=1,3,5,7,8, b100=2,3,4,5,8, c100; clrscr(); fun(a, b, c, 5); printf(The result is: ); for (i=0; i5; i+) printf(%d , ci); printf(n); NONO(); NONO( ) /* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */ FILE *rf, *
12、wf ; int a100, b100, c100, i, j ; rf = fopen(in.dat, r) ; wf = fopen(bc01.dat,w) ; for(i = 0 ; i 5 ; i+) for(j = 0 ; j 5 ; j+) fscanf(rf, %d, &aj) ; for(j = 0 ; j 5 ; j+) fscanf(rf, %d, &bj) ; fun(a, b, c, 5) ; for(j = 0 ; j 5 ; j+) fprintf(wf, %d , cj) ; fprintf(wf, n) ; fclose(rf) ; fclose(wf) ; 程
13、序参考答案 void fun(int a, int b, int c, int n) int i; for (i=0; i 第5题 函数fun的功能是:把a数组中的n个数和b数组中逆序的n个数一一相减,结果存在c数组中。 例如:当a数组中的值是:1、3、5、7、8 b数组中的值是:2、3、4、5、8 调用该函数后,c数组中存放的数据是-7、-2、1、4、6 注意:部分源程序存在文件PROG1.C中。 请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 Prog1.c #include #include void fun(int a, int b, in
14、t c, int n) main() int i, a100=1,3,5,7,8, b100=2,3,4,5,8, c100; clrscr(); fun(a, b, c, 5); printf(The result is: ); for (i=0; i5; i+) printf(%d , ci); printf(n); NONO(); NONO ( ) /* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */ FILE *rf, *wf ; int a100, b100, c100, i, j ; rf = fopen(in.dat, r) ; wf = fopen(bc02.dat,w) ; for(i = 0 ; i 5 ; i+) for(j = 0 ; j 5 ; j+) fscanf(rf, %d, &aj) ; for(j = 0 ; j 5 ; j+) fscanf(rf, %d, &bj) ; fun(a, b, c, 5) ; for(j = 0 ; j 5 ; j+) fprintf(wf, %d , cj) ; fprintf(wf, n) ; fclose(rf) ; fclose(wf) ; 程序参考答案 void fun(int a, int b, int c, int n) int i; for (i=0; i