2011年3月全国计算机等级考试二级C语言上机题库解析

5星 · 超过95%的资源 需积分: 10 12 下载量 103 浏览量 更新于2024-07-31 收藏 863KB DOC 举报
"2011年3月份全国计算机等级考试二级C语言上机题库包含50套题目,旨在帮助考生复习C语言编程技能,包括程序填空和字符串处理等核心知识点。" 全国计算机等级考试二级C语言部分主要考察考生对C语言的基本语法、控制结构、函数使用、数据类型操作以及基本算法设计的能力。以下是对两个示例题目的详细解释: 1. 第一个题目涉及函数调用和嵌套函数的使用。函数`fun`根据输入的整型参数`i`返回不同的函数值。当`i`等于1时,应返回`x`的平方(由`f1`函数计算);当`i`不等于1时,应返回`x`和`y`的乘积(由`f2`函数计算)。因此,正确的填写应为: ```c double fun(int i, double x, double y) { if (i == 1) return f1(x); // 填写__2__处 else return f2(x, y); // 填写__3__处 } ``` 2. 第二个题目要求找到字符串中出现频率最高的字母(不区分大小写)并计算其出现次数。首先,定义一个长度为26的整型数组`k`来存储每个字母出现的次数。接着,遍历字符串,对于每个字母,将其转换为小写(`tolower`函数),然后更新对应字母计数器。正确的填写应为: ```c void fun(char *s) { int k[26] = {0}, n, i, max = 0; char ch; while (*s) { if (isalpha(*s)) { ch = tolower(*s); // 填写__1__ n = k[ch - 'a']++; if (n > max) { max = n; } } s++; } // ... } ``` 这个题目中,`tolower`函数将字符转换为小写,`ch - 'a'`用于将字符映射到数组`k`的相应位置。之后的代码负责统计最高频率的字母及其出现次数。 这两个题目涵盖了C语言中的关键概念,如条件语句(`if`)、函数调用、数组使用、字符处理和标准库函数的运用。备考全国计算机等级考试二级C语言,考生需要熟练掌握这些基础知识,并能灵活应用到实际问题中。通过反复练习类似题目,考生可以提升编程能力和应对考试的能力。