C语言期中试题.docx

上传人:b****6 文档编号:5544512 上传时间:2022-12-19 格式:DOCX 页数:10 大小:17.30KB
下载 相关 举报
C语言期中试题.docx_第1页
第1页 / 共10页
C语言期中试题.docx_第2页
第2页 / 共10页
C语言期中试题.docx_第3页
第3页 / 共10页
C语言期中试题.docx_第4页
第4页 / 共10页
C语言期中试题.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

C语言期中试题.docx

《C语言期中试题.docx》由会员分享,可在线阅读,更多相关《C语言期中试题.docx(10页珍藏版)》请在冰豆网上搜索。

C语言期中试题.docx

C语言期中试题

《C语言程序设计》期中考试卷

一、选择题

1.下面程序段的运行结果是。

for(x=3;x<6;x++)printf((x%2)?

(“**%d”):

(“##%d\n”),x);

A.**3

##4

**5

B.##3

**4

##5

C.##3

**4##5

D.**3##4

**5

2.下面程序的运行结果是。

#include

intmain()

{inti;

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

switch(i%5)

{case0:

printf("*");break;

case1:

printf("#");break;

default:

printf("\n");

case2:

printf("&");

}return0;}

A.#&&&*

 

B.#&

&

&*

 

C.#

&

&

&

*

D.#&

*

 

3.下面程序的功能是求算式xyz+yzz=532中的x,y,z的值(其中xyz和yzz分别表示一个三位数),请选择填空。

#include

intmain()

{intx,y,z,I,result=532;

for(x=1;x<10;x++)

for(y=1;y<10;y++)

for(;z<10;z++)

{i=100*x+10*y+z+100*y+10*z+z;

if()

printf(“x=%d,y=%d,z=%d\n”,x,y,z);

}

return0;

}

A1.z=xB1.z=1C1.z=0D1.z=y

A2.i/result==1B2.i=resultC2.i!

=resultD2.i==result

4.以下正确的描述是。

A.continue语句的作用是结束整个循环的执行

B.只能在循环体内和switch语句体内使用break语句

C.在循坏体内使用break语句或continue语句的作用相同

D.从多层循环嵌套中退出,只能使用goto语句

5.在下面的程序中,。

#include

intmain()

{intt,x;

for(t=1;t<=100;t++)

{scanf("%d",&x);

if(x<0)continue;

printf("%3d",t);

}

return0;

}

A.当x<0时整个循环结束

B.x>=0时什么也不输出

C.printf函数永远也不执行

D.最多允许输出100个非负整数

6.与下面程序段等价的是。

for(n=100;n<=200;n++)

{if(n%3==0)continue;

printf(“%4d”,n);}

A.for(n=100;(n%3)&&n<=200;n++)printf(“%4d”,n);

B.for(n=100;(n%3)||n<=200;n++)printf(“%4d”,n);

C.for(n=100;n<=200;n++)if(n%3!

=0)printf(“%4d”,n);

D.for(n=100;n<=200;n++)

{if(n%3)printf(“%4d”,n);

elsecontinue;

break;

}

7.下面程序的运行结果是。

#include

intmain()

{inta,b;

for(a=1,b=1;a<=100;a++)

{if(b>=20)break;

if(b%3==1){b+=3;continue;}

b-=5;

}

printf(“%d\n”,a);

return0;

}

A.7B.8C.9D.10

二、填空题

1.下面程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环。

请填空。

intn=0,c;

c=getchar();

while()

{if()n++;

c=getchar()

}

2.有1020个西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,下面的程序统计买完所需的天数,请填空。

#include

intmain()

{intday=0,x1=1020,x2;

while

{x2=;

x1=x2;

day++;

}

printf(“day=%d\n”,day);

return0;

}

3.当运行以下程序时,从键盘键入right?

<回车>,则下面程序的运行结果是。

#include

intmain()

{charc;

while((c=getchar())!

='?

')putchar(++c);

putchar('\n');

return0;

}

4.下面程序的运行结果是。

#include

intmain()

{inta=2,s=0,n=1,count=1;

while(count<=7){n=n*a;s=s+n;++count;}

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

return0;

}

5.当运行以下程序时,从键盘输入“China#<回车>”,则下面程序的运行结果是。

#include

intmain()

{intv1=0,v2=0;charch;

while((ch=getchar())!

='#')

switch(ch)

{case'a':

case'h':

default:

v1++;

case'o':

v2++;

}

printf("%d,%d\n",v1,v2);

return0;

}

6.下面程序段中循环体的执行次数是。

a=10;b=0;

do{b+=2;a-=2+b;}while(a>=0);

7.下面程序段的运行结果是。

x=2;

do{printf(“*”);x--;}while(!

x==0);

8.下面的程序的功能是用do-while语句求1—1000之间满足“用3除余2,用5除余3,用7除余2”的数,且一行只打印5个数,请填空。

#include

intmain()

{inti=1,j=0;

do

{if

{printf(“%4d”,i);

j++;

ifprintf(“\n”);

}

i=i+1;

}while(i<1000);

return0;

}

9.当运行以下程序时,从键盘输入“12345-1<回车>”,则下面程序的运行结果是。

#include

intmain()

{intk=0,n;

do

{scanf("%d",&n);k+=n;}while(n!

=-1);

printf("k=%dn=%d\n",k,n);

return0;

}

10.下面程序的运行结果是。

#include

intmain()

{inti=0,x=0,y=0;

do

{++i;

if(i%2!

=0){x=x+i;i++;}

y=y+i++;

}while(i<=7);

printf("x=%d,y=%d\n",x,y);

return0;

}

11.下面程序段是找出整数的所有因子。

请填空。

#include

intmain()

{intx,i;

scanf("%d",&x);

i=1;

for(;;)

{if(x%i==0)printf("%3d",i);

i++;}return0;}

12.鸡、兔共有30只,脚共有90个,下面程序段是计算鸡兔各有多少只,x代表有多少只鸡,y代表有多少只兔子,请填空完成程序。

for(x=1;x<=30;x++)

{y=30-x;

if()printf(“%d,%d\n”,x,y);

}

13.下面程序段的运行结果是。

for(a=1,i=-1;-1<=i<1;i++)

{a++;printf(“%2d”,a);}

printf(“%2d”,i);

14.下面程序的功能是1-3+5-7+……-99+101的值。

请填空。

#include

intmain()

{inti,t,s=0,q=1;

for(i=1;i<=101;i+=2)

{t=;s=s+t;q=;}

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

return0;

}

15.以下程序的功能是根据公式e=1+1/1!

+1/2!

+1/3!

+……,求e的近似值,精度要求为10-6。

请填空。

#include

intmain()

{inti;doublee,n;

;n=1.0;

for(i=1;;i++)

{n/=i;e+=n;}

printf("e=%f\n",e);

return0;

}

16.下面程序的运行结果是。

#include

intmain()

{inti;

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

switch(i%2)

{case0:

i++;printf("#");break;

case1:

i+=2;printf("*");

default:

printf("\n");

}

return0;

}

17.下面程序的功能是统计用数字0-9可以组成多少个没有重复数位的3位偶数。

请填空。

#include

intmain()

{intn=0,i,j,k;

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

for(k=0;k<=8;)

if(k!

=i)

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

if()

{printf("%d\n",i*100+j*10+k);

n++;

}

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

return0;

}

18.下面程序的功能是输出1-100之间满足每位数的乘积大于每位数的和的数。

请填空。

#include

intmain()

{intn,k=1,s=0,m;

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

{k=1;s=0;

;

while()

{k*=m%10;

s+=m%10;

;

}

if(k>s)printf("%5d",n);

}

printf("\n");

return0;

}

 

三、编程题

1.打印出以下图形(10’)

********

**s*u*s*

********

2.有三个数a、b、c,由键盘输入,输出其中第二大的数。

(12’)

3.编写一个程序,求s=1+(1+2)+(1+2+3)+…+(1+2+3+…+n)的值。

(15’)

4.输入一批非0数,直到输入0时为止,计算其中奇数的平均值和偶数的乘积。

(15’)

5.有一口深度为h米的水井,井底有一只青蛙,它每天白天能够沿井壁向上爬m米,夜里则顺井壁向下滑n米,若青蛙从某个早晨开始向外爬,试编写一个函数:

对于任意指定的h,m,n值(均为自然数),计算青蛙多少天能够爬出井口?

(15’)

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

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1