计算机等级考试试卷 (二级)_第1页
计算机等级考试试卷 (二级)_第2页
计算机等级考试试卷 (二级)_第3页
计算机等级考试试卷 (二级)_第4页
计算机等级考试试卷 (二级)_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、模拟 2 答案 092006年秋浙江省高等学校计算机等级考试试卷(二级C)试题1 (每小题3分,共12分)阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正 确答案。【程序说明】输入一行字符,统计并输出其中英文字母、数字和其他字符的个数。运行示例:Enter characters: f(x,y)=3x+5y-10letter=5, digit=4, other=6【程序】#include void main() int digit, i, letter, other;ch;digit = letter = other = 0;printf(Enter characters:);w

2、hile( (2)!= n)if( (3)一letter +;(ch = 0 & ch = a & ch = A & ch = a & ch =A & ch = a & ch = A & ch = z判断是否为字母(大写或小写),这是典型语句!A 、ifB、elseC、else ifD、 if else注意配对,所以A错误。试题2 (每小题3分,共12分)阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正 确答案。【程序说明】输入一个整数,将它逆序输出。要求定义并调用函数reverse( longnumber ),它的功能是返回number的逆序数。例如reverse(12345

3、)的返回值是 54321。运行示例:Enter an integer: -123After reversed: -321【程序】#include void main() long in;long reverse(long number);printf(Enter an integer:);scanf(%ld, &in);/*6*/printf(After reversed:%ldn, (5) ); long reverse(long number) int flag; (6); flag = number 0C 、number != 0语句 if( (7) ) number = - numbe

4、r;函数abs,所以选Bo(8) A 、number%10D、reversen ,所以这里应该选Co、long resD、res,超过一整数的范围,所以要用long(8) res要有初值,所以选CoB、number 0D、number = 0的作用相当十取绝对值B 、res*10 + number%10C 、number/10D 、res*10 + number/10由下一句number /= 10;可以推断这里是求余,先排除 CD=仔细思考选Bo以下两句:res = res*10 + number%10 ;number /= 10;先求个位数,然后除以10,就得到十位数。也就是说,除以10后

5、,原 来的十位数就变成了个位数。试题3 (每小题3分,共12分)阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正 确答案。【程序说明】输入一个3行2列的矩阵,分别输出各行元素之和.运行示例:Enter an array:6 3-83 12 sum of row 0 is 9sum of row 1 is -7sum of row 2 is 15 【程序】#include void main() int j, k, sum = 0;int a32;printf(Enter an array:n);for(j = 0; j 3; j+)for(k = 0; k 2; k+) sca

6、nf(%d, (9) ); for(j = 0; j 3; j+)(10)for(k = 0; k 2; k+)sum =(11) ;printf(sum of row %d is %dn,(12) , sum); 【供选择的答案】A 、ajkB、akjC、&ajkD、&akj双层循环,输入数组,根据 Scanf的语法,首先排除AB;根据行列关系(先、sum = -1;D 、sum = 0;、sum + a皿、0D显然不对。因此选AB、j、1按照行,后按照列),可以推断这里是Co TOC o 1-5 h z A 、;BC 、sum = 1;每次初值为0,否则会各行累加。A、sum + ajkB

7、C 、sum + akk DBC只会累加对角线上的元素,所以错误。A 、kC 、0D注意,J表示行,K表示列。试题4 (每小题3分,共12分)阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正 确答案。【程序】#include void main() int k;for(k = 5; k 0; k-)if(k=3)continue; /*第 6 行 */printf(%d , k); 程序的输出是(13)。 TOC o 1-5 h z A 、5 4 3 2 1 B、5 4 2 1C、5 4D、3将第6行中的continue 改为break后,程序的输出是。A 、5 4 3 2 1

8、 B 、5 4 2 1C、5 4D、3将第6行中的continue 删除(保留分号)后,程序的输出是oA、5 4 3 2 1 B、5 4 2 1C、5 4D、3将第6行全部删除后,程序的输出是 (16)A、5 4 3 2 1B、5 4 2 1C、5 4D、3本题注意以下两点:. break跳出本层循环. Contiune 结束本次循环,立即执行下一次条件判断 然后细心即可。试题5 (每小题3分,共12分)阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正 确答案。【程序】# include void main() char c, s80= int i;Happy New Year

9、;void f(char *s, char c);c = getchar();f(s, c);puts(s); void f(char *s, char c) int k = 0, j = 0; while(sk != 0) if(sk != c)sj = sk;j+;k+; sj = 0; 程序运行时,输入字母A 、Happy New Year C、Hay New Year程序运行时,输入字母A 、Happy New Year C、Hay New Year程序运行时,输入字母A 、Happy New Year C、Hay New Year程序运行时,输入字母A、Happy New YearC

10、、Hay New Year 仔细研究以下语句:a,输出 (17)。B、Hppy New YerD 、Happy Nw Yar e,输出 (18)。B、Hppy New YerD、Happy Nw Yar p,输出 (19)。B、Hppy New YerD 、Happy Nw Yar b,输出 (20)。B 、Hppy New YerD 、Happy Nw Yarif(sk != c)sj = sk;j+;发现其作用是删除数组S中等于字符变量 不等于字符变量C的元素都保留。C的元素,或者也可以这样说,把因此17删除a,因此18删除e,因此19删除p,因此20删除b试题6 (每小题3分,共12分)

11、#include struct stint x, y, z; ;void f(struct st *t, int n);void main() int k, n;struct st time;scanf(%d%d%d%d, &time.x, &time.y, &time.z, &n);f(&time, n);printf(%d:%d:%dn, time.x, time.y, time.z);/* 等价于 z=z+n;*/void f(struct st *t, int n)t-z = t-z + n; if(t-z = 60)t-y = t-y + t-z/60;t-z = t-z%60;if

12、(t-y = 60)t-x = t-x + t-y/60;t-y = t-y%60;/* 等价于 y=y+z/60;*/ /* 等价于 z=z%60;*/* 等价于 x=x+y/60;*/* 等价于 y=y%60;*/if(t-x = 24) t- x = t-x % 24;(21)程序运行时,输入12 12 50 10(21)A、12:12:0 12:13:0程序运行时,A、12:12:0 12:12:40程序运行时,A、23:0:0、12:12:50、12:12:60输入B输入12 12 30 10、12:12:1022 59 30 30B 、22:59:60 C,输出C 、12:12:3

13、0,输出、22:59:30(22)(23)D、22:0:0(24)程序运行时,A、0:4:0 23:0:0输入 23 59 0 300B 、23:59:300,输出、23:59:00(24)这里主要运用了结构体的知识,当把程序变换为没有结构体的一般形式后(见下面),就非常容易理解了。程序等价于以下片段:sacnf( %d:%d:%d ”,&x,&y,&z); f(x,y,z,n);printf( %d:%d:%d ”,x,y,z);void f(x,y,z,n);z=z+n;if(z=0)y=y+z/60;z=z%60;if(y=60)x=x+y/60;y=y%60;if(x=24)x=x%2

14、4;试题7 ( 14分)编写程序,输入100个学生的英语成绩,统计并输出该门课程的平均分以及不及格学生的 人数。#include main() int nopass=0;n=1;fs;float pjf=0.0;while(n=100)scanf( ihput%d”,fs);pjf=pjf+fs;if(fs60) nopass+;n+;pjf=pjf/100;printf( pjf%d”,pjf);printf( nopass%dnopass);)程序有多种写法,这只是一种。也可以使用数组。试题8 ( 14分)编写程序,输入一个正整数n,计算并输出下列算式的值。要求定义和调用函数total(n)计算1+1/2+1/3+1/n,函

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论