全国计算机等级二级C语言上机编程题题型
第1题
函数fun的功能是:将n个人员的考试成绩进行分段统计,考试成绩放在a数组中,各分数段的人数存到b数组中:成绩为60到69的人数存到b[0]中,成绩为70到79的人数存到b[1],成绩为80到89的人数存到b[2], 成绩为90到99的人数存到b[3],成绩为100的人数存到b[4], 成绩为60分以下的人数存到b[5]中。
例如,当a数组中的数据是:
93、85、77、68、59、43、94、75、98。
调用该函数后,b数组中存放的数据应是:
1、2、1、3、0、2。
注意:部分源程序存在文件PROG1.C中。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
Prog1.c
#include
#include
void fun(int a[], int b[], int n)
{
}
main()
{ int i, a[100]={ 93, 85, 77, 68, 59, 43, 94, 75, 98}, b[6];
clrscr();
fun(a, b, 9);
printf("the result is: ");
for (i=0; i<6; i++) printf("%d ", b[i]);
printf("
");
NONO();
}
NONO( )
{/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */
FILE *rf, *wf ;
int a[100], b[6], 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,", &a[j]) ;
fun(a, b, 9) ;
for(j = 0 ; j < 6 ; j++) fprintf(wf, "%d ", b[j]) ;
fprintf(wf, "
") ;
}
fclose(rf) ;
fclose(wf) ;
}
程序参考答案
void fun(int a[], int b[], int n)
{
int i;
for (i=0; i<6; i++) b[i] = 0;
for (i=0; iif (a[i] < 60) b[5]++;
else b[(a[i]- 60)/10]++;
}首页 1 2 3 4 5 尾页