C语言编程:2009年上海计算机二级考试重点解析

版权申诉
0 下载量 199 浏览量 更新于2024-07-13 收藏 552KB PDF 举报
"上海2009年计算机二级考试题(c语言).pdf" 这篇资源看起来是2009年上海计算机二级考试的C语言试题集,包含单选题、填空题和程序填空题,主要考察考生对C语言的基础知识、条件判断、循环控制、字符串处理、数组操作以及素数检测等编程技能。 1. 单选题部分: - 数组元素的下标范围通常是从0开始到数组长度减1,因此对于定义的`inta[10]`,合法的下标范围是`0`到`9`。 - 对于条件判断语句,如果`x>y`,则执行`z=x;`,然后`x=y;`,最后`y=z;`。因此,如果初始条件满足`x>10`,最终`x`、`y`、`z`都将等于`x`的初始值,即`10`。 2. 填空题部分: - 计算字符串`s`的长度,`s[]="Hello!"`,所以`i`的值将是字符串的长度,不包括终止符`\0`,即`6`。 - 未提供完整的程序,但根据给出的部分,程序会找出在1到1000之间同时能被3和5整除的数字,每找到3个就停止。因此,输出可能是`15,30,45`,具体取决于`n`的值。 3. 程序填空: - 题目要求输入`n`个大于1的正整数,并输出其中的素数。空(1)应该是循环条件,一般用于遍历`n`次,可以填写`i<n`。空(2)用于输入一个正整数`a`,可以填写`scanf("%d",&a);`。空(3)检查`j`是否是`a`的因子,如果`a%j==0`则不是素数,所以可以填写`a%j!=0`。 4. 文件操作题: - 这个程序首先从`student.txt`读取数据,然后根据用户输入的成绩筛选出达到或超过该成绩的学生数据,将这些数据写入新的文件`studentD.txt`。例如,如果用户输入的成绩是90,那么只有学号为101(考试成绩58+95=153)和107(平时成绩80+67=147)的学生数据会被写入新文件。 以上是对试题的解析,具体解题过程需要根据完整的题目和选项进行,这里只提供了基本思路和分析。考生在准备这类考试时,应重点掌握C语言的基本语法、流程控制、数据类型、函数使用、文件操作等核心知识点。