1、国家二级 C语言程序设计机试(程序设计题)模拟试卷 5及答案与解析 一、程序设计题 1 编写函数 fun,其功能是:将两个两位数的正整数 a、 b合并成一个整数放在 e中。合并的方式是:将 a数的十位和个位数依次放在 c数的十位和千位上, b数的十位和个位数依次放在 e数的百位和个位上。 例如,当 a=45, b=12时,调用该函数后, c=5 142。 注意:请勿改动主函数 main和其他函数中的任何内容,仅在函数 fun的花括号中填入你编写的若干语句。 试题程序: #include void fun(int a, int b, long*c) main() int a, b; long c
2、; void NONO(); printf(“Input a, b: ”); scanf(“ d d”, &a, &b); fun(a, b, &c); prinff(“The result is: d n”, c); NONO(); void NONO() *本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 * FILE* rf, *wf; int i, a, b; long c; rf=fopen(“in dat”, “r”); wf=fopen(“out dat”, “w”); for(i=0; i #define N 80 int fun(char*str) main()
3、char sN; FILE*out; char*test=“1234321”, “123421”“123321”, “abcdCBA”; int i; prinff(“Enter a string: ”); gets(S); prinff(“ n”); puts(s); if(fun(s) prinff(“YES n”); else printf(“NO n”); * out=fopen(“out dat”, “w”); for(i=0; i #include #include void fun(char*s, int num) main() void NONO(); char S10; pr
4、intf(“输入 7个字符的字符串: ”); gets(s); fun(s, 7); prinff(“ n s”, s); NONO(); void NONO() *请在此函数内打开文件,输入测试数据,调用 fun函数,输出数据,关闭文件。 * char S10; FILE*rf, *wf; int i=0; rf=fopen(“in dat”, “r”); wf=fopen(“out dat”, “w”); while(i2)。 例如,若输入 9 9 8 5 7 6 8 5 9 3 9 58 9 7 8 8 6 8 4十个得分,则输出结果为 8 687500。 注意:请勿改动主函数 main
5、和其他函数中的任何内容,仅在函数 fun的花括号中填入所编写的若干语句。 试题程序: #include void NONO(); double fun(double a, int n) main() double b10, r; int i; prinff(“输入 10个数放入 b数组中: ”); for(i=0; iai)min=ai; sum=summaxmin: return(sum (n一 2); 【试题解析】 设定三个变量: sum存放和值, max存放最大值, min存放最小值。 max和 min都被赋予数组中第一个元素的值。利用循环将数组中元素累加到sum中,并找出最大值和最小值, sum值减去最大值和最小值,最后函数返回sum除以元素个数 n一 2的平均值。