运行广技师C语言复习题4.docx

上传人:b****8 文档编号:10361366 上传时间:2023-02-10 格式:DOCX 页数:15 大小:18.53KB
下载 相关 举报
运行广技师C语言复习题4.docx_第1页
第1页 / 共15页
运行广技师C语言复习题4.docx_第2页
第2页 / 共15页
运行广技师C语言复习题4.docx_第3页
第3页 / 共15页
运行广技师C语言复习题4.docx_第4页
第4页 / 共15页
运行广技师C语言复习题4.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

运行广技师C语言复习题4.docx

《运行广技师C语言复习题4.docx》由会员分享,可在线阅读,更多相关《运行广技师C语言复习题4.docx(15页珍藏版)》请在冰豆网上搜索。

运行广技师C语言复习题4.docx

运行广技师C语言复习题4

【关键字】运行

一、选择题

1.设有如下程序段,则下面描述正确的是

intk=10;

while(k=0)k=k-1;

A.while循环执行10次B.循环是无限循环

C.循环体语句一次也不执行D.循环体语句执行一次

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

a=1;b=2;c=2;

while(a

pirntf(“%d,%d,%d”,a,b,c);

A.1,2,0B.2,1,.1,2,1D.2,1,1

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

intn=0;

while(n<=2)n++;printf(“%d”,n);

A.2B..4D.有语法错误

4.设有如下程序段,则描述正确的是。

t=0;

while(printf(“*”))

{t++;if(t<3)break;}

A.其中循环控制表达式与0等价

B.其中循环控制表达式与‘等价

C.其中循环控制表达式是不合法的

D.以上说法都不对

5.下面程序的功能是将从键盘输入的一对数,由小到大排序输出,当输入一对等数时结束循环,请选择填空。

#include

intmain()

{inta,b,t;

scanf("%d%d",&a,&b);

while()

{if(a>b){t=a;a=b;b=t;}

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

scanf("%d%d",&a,&b);

}

return0;

}

A.!

a=bB.a!

=bC.a==bD.a=b

8.下面程序的功能是在输入的一系列正整数中求出最大者,输入0结束循环,请选择填空。

#include

intmain()

{inta,max=0;

scanf("%d",&a);

while()

{if(max

scanf("%d",&a);

}

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

return0;

}

A.!

a=0B.a!

=.a==0D.a=0

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

#include

intmain()

{intnum=0;

while(num<=2)

{num++;

printf("%d",num);

}

return0;

}

A.1B.12C.123D.1234

11.以下程序的功能是计算一个整数的各位数字之和,请选择填空。

#include

intmain()

{intn,m=0;

scanf("%d",&n);

for(;n!

=0;)

{m;

n/=10;

}

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

return0;

}

A.+=n%10B.=n%10C.+=nD.=n/10

13.以下程序段。

x=-1;

do

{x=x*x;}while(!

x);

A.是死循环B.循环执行二次C.循环执行一次D.有语法错误

14.以下描述中正确的是。

A.while、do-while、for循环中的循环体语句都至少被执行一次

B.do-while循环中,while(表达式)后面的分号可以省略

C.while循环体中,一定要有能使while后面表达式的值变为“假”的操作

D.do-while循环中,根据情况可以省略while

15.下面程序的功能是计算正整数2345的各位数字的平方和,请填空。

#include

intmain()

{intn=2345,sum=0;

do

{sum=sum+;

n=;

}while(n);

printf(“sum=%d”,sum);

return0;

}

A.n%10B.(n%10)*(n%10)

C.n/10D.(n/10)*(n/10)

A.n/1000B.n/100C.n/10D.n%10

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

#include

intmain()

{inty=10;

do

{y--;}while(--y);

printf("%d\n",y--);

return0;

}

A.-1B.1C.8D.0

18.下面有关for循环的正确描述是。

A.for循环只能用于循环次数已经确定的情况

B.for循环是先执行循环体语句,后判断表达式

C.for循环中,不能用break语句跳出循环体

D.for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来

19.对for(表达式1;;表达式3)可理解为。

A.for(表达式1;0;表达式3)

B.for(表达式1;1;表达式3)

C.for(表达式1;表达式1;表达式3)

D.or(表达式1;表达式3;表达式3)

20.若i为整型变量,则以下循环执行次数是。

for(i=2;i==0;)printf(“%d”,i--);

A.无限次B.0次C.1次D.2次

21.以下不是无限循环的语句为。

A.for(y=0,x=1;x>++y;x=i++)i=x;

B.for(;;x++=i);

C.while

(1){x++;}

D.for(i=10;;i--)sum+=i;

24.下面程序的功能是求算式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;

}

A.z=xB.z=1C.z=0D.z=y

A.i/result==1B.i=resultC.i!

=resultD.i==result

25.以下正确的描述是。

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

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

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

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

26.在下面的程序中,。

#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个非负整数

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

#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.C2.A3.B4.D5.B6.CA7.DC8.B9.C

10.A11.A12.C13.C14.C15.BC16.BD17.D

18.D19.B20.B21.A22.D23.B24.CD25.B

26.D27.C28.B

二、填空题

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

请填空。

intn=0,c;

c=getchar();

while()

{if()n++;

c=getchar()

}

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;

}

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;

}

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;

}

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;

}

20.若从键盘输入6514<回车>,则下面程序的运行结果是。

#include

intmain()

{intm,n;

printf("Enterm,n:

");

scanf("%d%d",&m,&n);

while(m!

=n)

{while(m>n)m-=n;

while(n>m)n-=m;

}

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

return0;

}

21.下面程序的功能是计算100-1000之间有多少个数其各位数字之和是5。

请填空。

#include

intmain()

{inti,s,k,count=0;

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

{s=0;k=i;

while(){s+=k%10;k=;}

if(s!

=5);

else

{count++;printf("%6d",i);}

if(count%5==0)putchar('\n');

}

putchar('\n');

return0;

}

答案:

1.c!

=’\n’c>=’a’&&c<=’z’||c>=’A’&&c<=’Z’

2.(x1)x1/2-2

3.sjhiu

4.s=254

5.5,5

6.3

7.**

8.(i%3==2&&i%5==3&&i%7==2)(j%5==0)

9.k=14n=-1

10.x=1,y=20

11.i<=x

12.2*x+4*y==90

13.-1

14.q*i-q

15.e=1n>=1e-6

16.*

#

17.k+=2j!

=i&&j!

=k

18.m=nmm/=10

19.j=1k>=0&&k<=6

20.m=1

21.kk/10continue

22.breakk<=10

此文档是由网络收集并进行重新排版整理.word可编辑版本!

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

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

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

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