C语言编程:全国计算机等级二级考试上机题解析

需积分: 10 3 下载量 133 浏览量 更新于2024-11-16 收藏 42KB DOC 举报
"全国计算机等级二级C语言上机编程题主要涉及C语言编程,特别是针对数组处理和条件判断。题目要求编写一个名为`fun`的函数,该函数接收一个整数数组`a`,表示人员的考试成绩,以及一个整数数组`b`,用于存储各分数段的人数。函数需要根据指定的分数段统计`a`数组中对应成绩的人数,并将结果存储在`b`数组中。此外,主函数`main`和辅助函数`NONO`也在此程序中起到关键作用,分别负责测试`fun`函数的功能和处理文件输入输出。 在`fun`函数中,我们需要遍历`a`数组,检查每个元素是否落在特定分数段内,并更新相应的`b`数组元素。具体实现可以如下: ```c void fun(int a[], int b[], int n) { int i; for (i = 0; i < n; i++) { if (a[i] >= 60 && a[i] <= 69) { b[0]++; } else if (a[i] >= 70 && a[i] <= 79) { b[1]++; } else if (a[i] >= 80 && a[i] <= 89) { b[2]++; } else if (a[i] >= 90 && a[i] <= 99) { b[3]++; } else if (a[i] == 100) { b[4]++; } else { // 对于60分以下的成绩 b[5]++; } } } ``` 这个函数首先初始化`b`数组的所有计数为0,然后遍历`a`数组。对于每个成绩,它通过一系列的`if-else`语句判断其分数段,并相应地增加`b`数组中的计数。主函数`main`创建了一个测试用例并调用`fun`函数,最后输出统计结果。 辅助函数`NONO`的作用是读取一个文件`in1.dat`,将其中的数据分配给`a`数组,然后调用`fun`函数统计成绩,再将结果写入文件`bc01.dat`。它实现了文件I/O操作,这对于处理大量数据或自动化测试非常有用。 通过这个编程题,考生可以复习和巩固C语言的基本语法,如数组操作、条件控制结构以及文件I/O。同时,这也是对逻辑思维和问题解决能力的锻炼,因为需要理解题目的需求,并能够正确地实现函数来满足这些需求。在实际考试中,这样的题目旨在测试考生对C语言基本概念的掌握程度以及编程实践中解决问题的能力。