- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2012年上半年浙江省高等学校计算机等级考试二级C程序设计试卷
2012年上半年浙江省高等学校计算机等级考试
二级C程序设计试卷
说明:
⑴本试卷共6页,满分100分;考试时间为90分钟;
⑵考生应将所有试题的答案填写在答卷上;
⑶程序阅读与填空全部是选择题,请在答卷上的各小题选项的对应位置上填“√”;
⑷请将你的准考证号的后五位填写在答卷右下角的指定位置内。
一、程序阅读与填空(24小题,每小题3分,共72分)
1.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。
【程序说明】
输入一个正整数m,判断它是否为素数。素数就是只能被1和自身整除的正整数,1不是素数,2是素数。
运行示例:
Enter m:9
9 is not a prime.
Enter m:79
79 is a prime.
【程序】
#include stdio.h
#include math.h
void main()
{ int j,k,m;
printf(Enter m:);
scanf(%d,m);
k=sqrt(m);
for(j=2; (1) ;j++)
if( (2) ) (3) ;
if(jk (4) )
printf(%d is a prime.\n,m);
else
printf(%d is not a prime.\n,m);
}
【供选择的答案】
(1)A、jk B、j=k C、jm D、jn
(2)A、m%j==0 B、m%j=0
C、m%j!=1 D、m%j==1
(3)A、return B、break;
C、go D、continue
(5)A、m==1 B、m!=2
C、m!=1 D、m==2
2.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。
【程序说明】
输一个正整数n1,再输入第一组n1个数,这些数已按从小到大的顺序排列,然后输入一正整数n2,随即输入第二组n2个数,它们也按从小到大的顺序排列,要求将这两组数合并,合并后的数应按从小到大的顺序排列。要求定义和调用函数merge(list1,n1,list2,n2,list,n),其功能是将数组list1的前n1个数和数组list2的前n2个数共n个数合并存入数组list,其中list1的前n1个数和list2的前n2个数分别按从小到大的顺序排列,合并后的数组list的前n个数也按从小到大的顺序排列。
运行示例:
Enter n1:6
Ente 6 integers:2 6 12 39 50 99
Enter n1:5
Ente 5 integers:1 3 6 10 35
Merged:1 2 3 6 6 10 12 35 39 50 99
【程序】
#include stdio.h
void merge(int list1[],int n1,int list2[],int n2,int list[], (5) )
{
int i,j,k;
(6)
while(in1jn2){
if( (7) ) list[k]=list1[i++];
else list[k]=list2[j++];
k++;
}
while(in1) list[k++]=list1[i++];
while(in2) list[k++]=list1[j++];
(8) ;
}
void main()
{ int i,n1,n2,n,list1[100],list2[100],list[100];
printf(Enter n1:);
scanf(%d,n1);
printf(“Ente %d integers:”,n1);
for(i=0;in1;i++)
scanf(%d,list1[i]);
printf(Enter n2:);
scanf(%d,n2);
printf(“Ente %d integers:”,n2);
for(i=0;in2;i++)
scanf(%d,l
文档评论(0)