高考理综下半年浙江省高等学校计算机等级考试.docx

上传人:b****6 文档编号:13702240 上传时间:2023-06-16 格式:DOCX 页数:10 大小:19.59KB
下载 相关 举报
高考理综下半年浙江省高等学校计算机等级考试.docx_第1页
第1页 / 共10页
高考理综下半年浙江省高等学校计算机等级考试.docx_第2页
第2页 / 共10页
高考理综下半年浙江省高等学校计算机等级考试.docx_第3页
第3页 / 共10页
高考理综下半年浙江省高等学校计算机等级考试.docx_第4页
第4页 / 共10页
高考理综下半年浙江省高等学校计算机等级考试.docx_第5页
第5页 / 共10页
高考理综下半年浙江省高等学校计算机等级考试.docx_第6页
第6页 / 共10页
高考理综下半年浙江省高等学校计算机等级考试.docx_第7页
第7页 / 共10页
高考理综下半年浙江省高等学校计算机等级考试.docx_第8页
第8页 / 共10页
高考理综下半年浙江省高等学校计算机等级考试.docx_第9页
第9页 / 共10页
高考理综下半年浙江省高等学校计算机等级考试.docx_第10页
第10页 / 共10页
亲,该文档总共10页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

高考理综下半年浙江省高等学校计算机等级考试.docx

《高考理综下半年浙江省高等学校计算机等级考试.docx》由会员分享,可在线阅读,更多相关《高考理综下半年浙江省高等学校计算机等级考试.docx(10页珍藏版)》请在冰点文库上搜索。

高考理综下半年浙江省高等学校计算机等级考试.docx

高考理综下半年浙江省高等学校计算机等级考试

2010下半年浙江省高等学校计算机等级考试

二级C程序设计试卷

一、程序阅读与填空(24小题,每小题3分,共72分)

1.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序说明】

输入5个整数,将它们从小到大排序后输出。

运行示例:

Enter5integers:

9-9360

Aftersorted:

-90369

【程序】

#include

main()

{

inti,j,n,t,a[10];

printf("Enter5integers:

");

for(i=0;i<5;i++)

scanf("%d",.&a[i]);

for(i=1;i<5;i++)

for(j=0;j<5;j++)

if(a[j]>a[j+1]){

t=a[j];a[j]=a[j+1];a[j+1]=t;

}

printf("Aftersorted:

");

for(i=0;i<5;i++)

printf("%3d",a[i]);

}

【供选择的答案】

(1)A.&a[i]B.a[i]C.*a[i]D.a[n]答案:

A

(2)A.i<5B.i<4C.i>=0D.i>4答案:

A

(3)A.j<5-i-1B.j<5-iC.j<5D.j<=5答案:

B,C也可以

(4)A.a[j]a[j-1]C.a[j]>a[j+1]D.a[j-1]>a[j+1]答案:

C

2.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序说明】

输出80-120之间的满足给定条件的所有整数,条件为构成该整数的每位数字都相同。

要求定义和调用函数is(n)判断整数n的每位数字是否都相同,若相同则返回1,否则返回0。

运行示例:

8899111

【程序】

#include

main()

{

inti;intis(intn);

for(i=80;i<=120;i++)

if((5))

printf("%d",i);

printf("\n");

}

intis(intn)

{

intold,digit;

old=n%10;

do{

digit=n%10;

if((6))return0;

(7)

n=n/10;

}while(n!

=0);

(8)

}

【供选择的答案】

(5)A.is(n)==0B.is(i)==0C.is(n)!

=0D.is(i)!

=0答案:

D

(6)A.digit!

=n%10B.digit==oldC.old==n%10D.digit!

=old答案:

D

(7)A.digit=old;B.old=digit/10;C.digit=old;D.;答案:

C

(8)A.return;B.return1;C.return0;D.return1;答案:

D

3.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序说明】

输入一个以回车结束的字符串(少于80个字符),将其逆序输出。

要求定义和调用函数revers(s),该函数将字符串s逆序存放。

运行示例:

Enterastring:

1+2=3

Afterrevered:

3=2+1

【程序】

#include

voidrevers(char*str)

{

inti,j,n=0;

chart;

while(str[n]!

='\0')n++;

for(i=0,(9);i

{t=str[i];str[i]=str[j];str[j]=t;}

}

main()

{inti=0;

chars[80];

printf("Enterastring:

");

while((11))i++;

s[i]='\0';

(12)

printf("Afterrevered:

");

puts(s);

}

【供选择的答案】

(9)A.j=n-1B.j=nC.j=n-2D.j=n+1答案:

A

(10)A.i++,j--B.i++,j++C.i--,j++D.i--,j--答案:

A

(11)A.s[i]=getchar()B.(s[i]=getchar()!

=’\n’

C.s[i]!

=’\0’D.(s[i]=getchar()!

=’\n’)答案:

D

(12)A.revers(*s)B.revers(s)

C.revers(&s)D.revers(str)答案:

B

4.阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序】

#include

#defines(x)3<(x)<5

inta,n;

voidf1(intn)

{

for(;n>=0;n--)

{

if(n%2!

=0)continue;

printf("%d",n);

}

printf("\n");

}

doublef2(doublex,intn)

{

if(n==1)return1;

elsereturnx*f2(x,n-1);

}

main()

{

inta=9;

printf("%d%d\n",a,s(a));

f1(4);

printf("%.1f\n",f2(2.0,3));

printf("%d%d\n",n,s(n));

}

【供选择的答案】

(13)程序运行时,第1行输出(13)。

A.01B.91C.00D.90答案:

B

(14)程序运行时,第2行输出(14)。

A.31B.420C.4321D.0答案:

B

(15)程序运行时,第3行输出(15)。

A.8.0B.2.0C.4.0D.3.0答案:

C

(16)程序运行时,第4行输出(16)。

A.01B.31C.00D.30答案:

A

5.阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序】

程序1

#include

main()

{

inti,j;

statica[4][4];

for(i=0;i<4;i++)

for(j=0;j<4;j++)

{

if(j==0||j==i)a[i][j]=1;

elsea[i][j]=a[i-1][j]+a[i-1][j-1];

}

for(i=2;i<4;i++)

{

for(j=0;j<=i;j++)

printf("%d",a[i][j]);

printf("\n");

}

}

程序2

#include

main()

{

charstr[80];

inti;

gets(str);

for(i=0;str[i]!

='\0';i++)

if(str[i]=='z')str[i]='a';

elsestr[i]+=1;

puts(str);

}

【供选择的答案】

(17)程序1运行时,第1行输出(17)。

A.1B.11C.121D.1331答案:

C

(18)程序1运行时,第2行输出(18)。

A.1B.11C.121D.1331答案:

D

(19)程序2运行时,输入123,输出(19)。

A.123B.012C.231D.234答案:

D

(20)程序2运行时,输入sz,输出(20)。

A.szB.tyC.taD.tz答案:

B

6.阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序】

#include

main()

{

inti,j;

charch,*p1,*p2,*s[4]={"tree","flower","grass","garden"};

for(i=0;i<4;i++)

{

p2=s[i];

p1=p2+i;

while(*p1!

='\0')

{*p2=*p1;

p1++;

p2++;

}

*p2='\0';

}

for(i=0;i<4;i++)

printf("%s\n",s[i]);

}

(21)程序运行时,第1行输出(21)。

A.reeB.eeC.treeD.e

(22)程序运行时,第1行输出(22)。

A.flowerB.owerC.werD.lower

(23)程序运行时,第1行输出(23)。

A.grassB.ssC.rassD.ass

(24)程序运行时,第1行输出(24)。

A.enB.ardenC.denD.garden

二、程序编写(每小题14分,共28分)

1.输入100个整数,将它们存入数组a,再输入一个整数x,统计并输出x在数组中出现的次数。

参考程序:

#include

main()

{

inti,a[100],x,cnt=0;;

for(i=0;i<100;i++)

scanf("%d",&a[i]);

scanf("%d",&x);

for(i=0;i<100;i++)

if(x==a[i])cnt++;

printf("%d\n",cnt);

}

2.按下面要求编写程序:

(1)定义函数fact(n)计算n!

,函数返回值double。

doublefact(intn)

{

inti;

doublet=1;

for(i=1;i<=n;i++)

t=t*i;

returnt;

}

(2)定义函数main(),输入正整数n,计算并输出下列算式的值。

要求调用函数fact(n)计算n!

参考程序:

#include

main()

{

intn,i;

doublesum=0;

while(scanf("%d",&n),n<=0);

for(i=1;i<=n;i++)

sum+=(n+1-i)/fact(i);

printf("\n%f\n",sum);

}

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2