2010年全国计算机等级考试二级C语言上机题库及解题指南

需积分: 10 0 下载量 170 浏览量 更新于2024-09-22 收藏 1.14MB DOC 举报
“全国计算机等级考试二级C语言上机题库,包含50套题目,旨在帮助考生复习C语言编程知识,涉及程序填空、错误检测等技能。” 在2010年9月份的全国计算机等级考试二级C语言的上机题库中,考生需要掌握C语言的基本语法和函数运用。题库提供了两个示例题目,分别是程序填空题和字符频率统计题,下面分别详细解析这两个题目: 1. **程序填空题** 这个题目考察的是对C语言中函数的理解和使用。题目要求填写缺失的代码部分以完成特定功能。给出的`fun`函数应该根据传入的整数`i`返回不同的函数结果。当`i==1`时,应返回`x`的平方(即调用`f1`函数),否则应返回`x`与`y`的乘积(即调用`f2`函数)。 正确填充的代码应该是: ```c double fun(int i, double x, double y) { if (i == 1) return f1(x); // 第一个下划线处填入f1 else return f2(x, y); // 第二个下划线处填入f2 } ``` 主函数`main`中调用`fun`函数来计算并输出相关值。 2. **字符频率统计题** 这个题目要求编写一个`fun`函数,统计传入字符串`s`中每个字母(不区分大小写)的出现频率。首先,定义一个大小为26的整型数组`k`来存储每个字母的计数,`n`用于记录字符串长度,`max`用于记录最高频率,`ch`用于临时存储当前字符。 在遍历字符串时,如果遇到字母,将其转换为小写(通过`tolower`函数实现)并更新相应的计数。正确填充的代码应该是: ```c ch = tolower(*s); n = *s ? n + 1 : n; // 检查字符串是否结束 k[ch - 'a']++; // 第一个下划线处填入ch - 'a' ``` 遍历结束后,还需遍历数组`k`,找出最高频率的字母并打印结果。 通过这些题目,考生可以检验自己的C语言基础知识,包括函数调用、条件判断、字符处理、数组操作等技能。同时,这样的练习也有助于提高逻辑思维能力和问题解决能力。在准备这类考试时,考生应多做类似题目,理解并熟练掌握C语言的核心概念和常用函数,以确保在实际考试中能够快速准确地解决问题。