C语言上机编程题:分段统计考试成绩

需积分: 9 35 下载量 72 浏览量 更新于2024-12-16 收藏 68KB DOC 举报
"2009年全国计算机二级C语言上机编程题详细分析" 本文将对2009年全国计算机二级C语言上机编程题进行详细分析,并对题目进行逐步解释和分析。 函数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的实现是本题的关键所在。函数fun的功能是将n个人员的考试成绩进行分段统计,并将结果存储到b数组中。 在函数fun中,我们可以使用if-else语句来实现分段统计。例如,我们可以使用以下代码来实现分段统计: ```c void fun(int a[], int b[], int n) { int i; for (i = 0; i < n; i++) { if (a[i] >= 90) { b[4]++; } else if (a[i] >= 80) { b[3]++; } else if (a[i] >= 70) { b[2]++; } else if (a[i] >= 60) { b[1]++; } else { b[5]++; } } } ``` 在上面的代码中,我们使用了if-else语句来实现分段统计。我们首先检查成绩是否大于或等于90,如果是,则将b[4]的值加1。否则,我们继续检查成绩是否大于或等于80,以此类推。 在主函数main中,我们首先初始化了a数组和b数组,然后调用函数fun来进行分段统计。最后,我们使用printf函数来输出结果。 在NONO函数中,我们可以看到文件的输入和输出操作。我们首先打开文件"in1.dat"和"bc01.dat",然后使用fscanf函数来读取文件"in1.dat"中的数据,并将其存储到a数组中。接着,我们调用函数fun来进行分段统计,并将结果写入到文件"bc01.dat"中。 本题的关键是实现函数fun来进行分段统计,并将结果存储到b数组中。通过使用if-else语句,我们可以轻松地实现分段统计,并将结果输出到屏幕上。