2010年计算机二级考试C语言上机题库与解析

需积分: 0 1 下载量 20 浏览量 更新于2024-08-01 收藏 1004KB DOC 举报
“2010年全国计算机等级考试二级C语言上机题库,包含50套题目,主要涉及程序填空题和字符串处理。” 在计算机二级考试中,C语言是一个重要的考察点,特别是对于编程能力和算法理解的要求。2010年的考试题库包括了程序填空题和字符串处理问题,这些都是C语言编程的基础和核心。 首先,让我们详细分析第一道程序填空题: 题目要求编写一个函数`fun`,它根据输入的参数`i`返回不同的函数值。当`i`等于1时,应返回`f1(x)`,即`x`的平方;当`i`等于2时,应返回`f2(x, y)`,即`x`和`y`的乘积。因此,正确的填写如下: ```c double fun(int i, double x, double y) { if (i == 1) return f1(x); // 填写:f1(x) else return f2(x, y); // 填写:f2(x, y) } ``` 这里,`f1`和`f2`是预先定义好的函数,`f1`接收一个`double`类型的参数并返回其平方,而`f2`接收两个`double`类型的参数并返回它们的乘积。 接下来是第二道题目,涉及到字符串处理和字符计数。该题目要求找出字符串中出现最频繁的字母(忽略大小写)并统计其出现次数。这需要使用到字符数组和循环来遍历字符串。题目给出的部分代码如下: ```c void fun(char *s) { int k[26] = {0}, n, i, max = 0; char ch; while (*s) { if (isalpha(*s)) { ch = tolower(__1__); // 填写:*s n = c... ``` 在这个部分,`k[26]`是一个数组,用于存储每个小写字母出现的次数,`isalpha`函数用于检查字符是否为字母,`tolower`将字符转换为小写。所以,正确填写的代码应该是: ```c ch = tolower(*s); // 填写:*s n = count_char(k, ch); // 假设count_char是一个用于统计字符出现次数的辅助函数 ``` 然后,你需要更新`k`数组中的相应元素,并在遍历结束后找到出现次数最多的字母并输出。 这两道题目展示了C语言编程的基本技巧,包括条件判断、函数调用、字符串操作以及数组的使用。对于准备计算机二级考试的考生来说,熟悉这些基本概念和技巧至关重要。通过解决这类问题,考生可以提高自己的编程能力,更好地理解和应用C语言。