77范文网 - 专业文章范例文档资料分享平台

3顺序结构、选择结构和循环结构

来源:网络收集 时间:2020-04-17 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

顺序结构、选择结构和循环结构

一、单项选择题

1. 假定所有变量均已正确定义,下列程序段运行后y的值是( )。

int a=0, y=10;

if(a=0) y- - ;else if(a>0) y++; else y+=y ; A.20 B.11 C.9 D.0 2. 假定所有变量均已正确定义,下列程序段运行后x的值是( )。

a=b=c=0,x=35;

if(!a) x- -; else if(b) ;if(c) x=3;else x=4; A.34 B.4 C.35 D.3 3. 下面的程序片段所表示的数学函数关系是( )。

y= -1;

if(x! =0)if(x>0) y=1; else y=0;

(x?0)??????1 (x?0)?1 ?0 (x?0)??1 (x?0)A.y??0 (x?0) B.y??-1 (x?0) C.y??-1 (x?0) D.y??1 (x?0)

?????1 (x?0)?0 (x?0)?1 (x?0)?0 (x?0)4. 下列各语句序列中,能够且仅输出整型变量a、b中最大值的是( )。 A、if(a>b) printf(”%d\\n”,a); printf(”%d\\n”,b); B、printf(”%d\\n”,b); if(a>b) printf(”%d\\n”,a); C、if(a>b) printf(”%d\\n”,a); else printf(”%d\\n”,b); D、if(a

5. 下列各语句序列中,能够将变量u、s中最大值赋值到变量t中的是( )。 A、if(u>s)t=u; t=s; B、t=s; if(u>s)t=u; C、if(u>s)t=s; else t=u; D、t=u; if(u>s)t=s; 6. 下列各语句中,能够输出整型变量a、b中最大值的是( )。

A、printf(”%d\\n”,(a>b)?a,b); B、(a>b)? printf(”%d”,a):printf(”%d”,b); C、printf(”%d”,if(a>b)a else b); D、printf(”%d\\n”,(a>b)?a:b); 7. 下列语句应将小写字母转换为大写字母,其中正确的是( )。

A、if(ch>=?a?&ch<=?z?) ch=ch-32; B、if(ch>=’a’&&ch<=’z’)ch=ch-32; C、ch=(ch>=?a?&&ch<=?z?)?ch-32:??; D、ch=(ch>?a?&&ch

8. int a=1, x=1; 循环语句while(a<10) x++; a++; 的循环执行( )。

A. 无限次 B.不确定次 C.10次 D.9次 9. 下列语句中,错误的是( )。 A.while(x=y) 5; B.do x++ while(x= =10);

C.while(0) ; D.do 2;while(a= =b); 10. 循环语句for(x=0,y=0;(y! =123)| | (x<4); x++); 的循环执行( )。

A.无限次 B.不确定次 C.4次 D.3次 11. 循环语句for(i=0, x=1; i=10 && x>0; i++); 的循环执行( )。

A.无限次 B.不确定次 C.10次 D.9次 12. i、j 已定义为int类型,则以下程序段中内循环体的执行次数是( )。

for(i=5;i;i--)

for(j=0;j<4;j++){………}

8

A.20 B.24 C.25 D.30 13. C语言 while语句中,用于条件的表达式是( )

A. 关系表达式 B. 逻辑表达式 C. 算术表达式 D. 任意表达式 14. while循环,执行次数是( )

i=4; while(--i) printf(“%d”,i);

A. 3次 B. 4次 C. 0次 D. 无数次 15. 下列程序段执行后 s的值为( )

int i=1, s=0; while(i++) if( !(i%3) ) break ; else s+=i ; A. 2 B. 3 C. 6 D. 以上均不是 16. 下列程序输出结果是( )

#include void main( )

{ int x=3, y=6, z=0;

while(x++!=(y-=1)){ z++; if(y

A. x=4,y=4,z=1 B. x=5,y=4,z=3 C. x=5,y=4,z=1 D. x=5,y=5,z=1 17. int i=1,s=0;

while (i<100) {s+=i++;if (i>100 ) break;} 执行以上程序段后,s的值是( )。 A.1到101的和 B.1到100的和 C.1到99的和 D.以上均不是 18. 假定i和j为int型变量,则执行以下语句后i的值为 ( )。

int i=1; switch (i++){

case 1: for (j=0;j<9;j++) if (i= =1) break; case 2: for (j=1;j<10;j++) if (i= =2) break; case 3: printf (“i=%d\\n”,i ); } A.0 B.1 C.9 D.10 19. 假定a和b为int型变量,则执行以下语句后b的值为 ( )。

a=1;b=10;

do { b - =a;a++;} while (b- -<0); A.9 B.-2 C.-1 D.8 20. 设x和y均为int型变量,则执行下面的循环后,y的值为 ( )。

for (y=1,x=1;y<=50;y++) { if (x>=10 ) break;

if (x%2==1) {x+=5;continue;} x - =3; } A.2 B.4 C.6 D.8 21. 求整数1至10的和并存入变量s,下列语句中错误的是( )。 A、s=0;for(i=1;i<=10;i++) s+=i; B、s=0;i=1;for(;i<=10;i++) s=s+i; C、for(i=1,s=0;i<=10;s+=i,i=i+1); D、for(i=1;s=0;i<=10;i++) s=s+i;

9

22. 若sizeof(int)为2,计算1至10的乘积,下列语句序列中正确的是( )。 A、int jc=1; for(int i=2;i<=10;i++) jc*=i; B、for(float jc=1,int i=2;i<=10;i++,jc*=i); C、float jc=1; for(int i=2;i<=10;jc*=i,i=i+1); D、for(float jc=1;i=2;i<=10;i++) jc*=i;

23. 下列语句中,哪一个可以输出26个大写英文字母( )。

A、 for(a=?A?;a<=?Z?;printf(”%c”,++a)); B、for(a=?A?;a=0&&i<=10) { if(i++==5)continue; printf(”%f\\n”,1.0/(i-5));} 功能相同的是( )。

A、for(;i>=0&&i<=10;i++) if(i!=5) printf(”%f\\n”,1.0/(i-5)); B、for(;i>=0&&i<=10;i++) if(i==5) printf(”%f\\n”,1.0/(i-5));

C、for(;i>=0&&i<=10;i++) if(i!=5) printf(”%f\\n”,1.0/(i-5)); else break; D、for(;i<=0&&i>=10;i++) if(i!=5) printf(”%f\\n”,1.0/(i-5));

25. 下列语句中与语句 while(1){if(i>=100)break;s+=i;i++;} 功能相同的是( )。 A、for(;i<100;i++) s=s+i; B、for(;i<100;i++;s=s+i); C、for(;i<=100;i++) s+=i; D、for(;i>=100;i++;s=s+i); 26. 在C语言中,下列说法中正确的是 ( )。 A.不能使用“do语句while(条件)”的循环 B.“do语句while(条件)”的循环必须使用“break”语句退出循环 C.“do语句while(条件)”的循环中,当条件为非0时将结束循环 D.“do语句while(条件)”的循环中,当条件为0时将结束循环 27. 在C语言的语句中,用来决定分支流程的表达式是 ( )。 A.可用任意表达式 B.只能用逻辑表达式或关系表达式 C.只能用逻辑表达式 D.只能用关系表达式

二、填充题

1. 结构化程序设计规定的三种基本结构是 结构、 结构和 结构。 2. 三种循环语句是 价的。

3. 当循环体中的switch语句内有break语句,则只跳出 语句。同样,当switch 语句中有循环语句,内有break语句,则只跳出 语句。 4. 循环体中的continue 语句是 。

5. 若有定义语句int a=25,b=14,c=19; 以下语句的执行结果是 。 if(a++<=25 && b--<=2 && c++) printf(“***a=%d,b=%d,c=%d\\n”, a, b, c); else printf(“***a=%d,b=%d,c=%d\\n”, a, b, c); 6. 以下两条if语句可合并成一条if语句

。 if(a<=b) x=1; else y=2; if(a>b) printf(“***y=%d\\n”,y); else prinft(“***x=%d\\n”,x);

7. 若int k=10, 循环语句while (k=0) k=k-1; 执行 次。

8.若int k=2, 循环语句while (k!=0) { printf(\执行 次。 9. 若int i=10,s=0;,执行语句while(s+=i--,--i);后s、i值分别为 。

10

10. 程序段 int s,i; for(i=1;i<=100;s+=i,i++); 能否计算1~100的和? , 原因是 。

11. 若int类型变量字长为2,程序段 int jc=1; for(int i=2;i<10;i++)jc*=i; 能否

计算10的阶乘? 原因是 。

12. 设i, j, k均为int型变量,则执行完下面的for循环后,k的值为 。 for(i=0,j=10; i<=j; i++,j--) k=i+j; 13. 下列程序的功能是输入一个正整数,判断是否能被3或7整除,若能整除,输出“YES”, 若不能整除,输出“NO”。请为程序填空。

void main( ) { int k;

scanf (“%d”, &k);

if ( ) printf(“YES\\n”); else printf (“NO\\n”); }

14. 下列程序的功能是输入一个正整数,判断是否是素数,若为素数输出1,否则输出0, 请为程序填空。

void main( ) { int i, x, y=1;

scanf(“%d”, &x); for(i=2; i<=x/2; i++)

if ( ) { y=0; break; } printf(“%d\\n”,y);

} 15. 输入2个整数,输出它们的最小公倍数和最大公约数。 #include void main( )

{ int m,n,gbs,gys;

scanf( );

for(gbs=m; ; gbs=gbs+m); gys= ; ; }

16. 输入N个实数,输出其中的最大值、最小值。

#include void main()

{ float no1,nmax,nmin; scanf(\ nmax=no1; for(i=2;i<=n;i++) { scanf(\&nox );

if(nox>nmax) nmax=nox; }

printf(\ MIN=%f\\n\ }

17. 输入若干个字符,分别统计数字字符的个数、英文字母的个数,当输入换行符时输

11

出统计结果,运行结束。

#include void main()

{ char ch; while(( )!='\\n') { if(ch>='0'&&ch<='9') s1++;

if(ch>='a'&&ch<='z' || ) s2++; }

}

18. 输入m,求n使 n!<=m<=(n+1)!,例如输入726,应输出n=6。 void main()

{ int ;

scanf( ); for(n=2;jc<=m;n++) jc=jc*n;

printf(”n=%d\\n”, ); /* 想一想为什么n-2 */ }

19. 下列程序计算并输出方程 X2+Y2+Z2=1989 的所有整数解。

#include void main()

{

for(i=-45;i<=45;i++) /* 想一想为什么值域为 (-45,45)*/ for( ) ) for(k=-45;k<=45;k++)

if( ) printf( , i,j,k); }

三、程序分析题

1. 阅读程序,写出运行结果。 void main ( )

{ int a=10, b=4, c=3;

if(a

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

2. 阅读下列程序,写出程序的输出结果。 void main ( )

{ int x=100, a=10, b=20, ok1=5, ok2=0 ; if(a

12

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库3顺序结构、选择结构和循环结构在线全文阅读。

3顺序结构、选择结构和循环结构.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/979402.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: