当前位置:文档之家› 第3章程序控制结构习题(C语言程序设计)

第3章程序控制结构习题(C语言程序设计)


第3章 程序控制结构
5. main() sum=1!+2!+3!+4! {int i,j, sum,m,n=4; n=4 sum=0; for(i=1;i<=n;i++) m=1 m=1*2*…*i { m=1; for(j=1;j<=i;j++) m=m*j; sum=sum+m sum=sum+m; printf(“sum=%d\n”,sum); } sum=1 } sum=3 sum=9 sum=33
A. 20
B. 19 D. 9

C. 10
if(i%2=0) { } else y+=i;
第3章 程序控制结构
二、写出运行结果
第3章 程序控制结构
1. main(){
t
i 0 1 2 3 4 5
累乘公式n!=1*2*3*…
20 5 60 1 int t=1,i=5; 120
for(;i>0;i--) t*=i; (t=t*i;) for(i=1;i< n;i++) i-t=1*5; t=t*i; t=5*4; for(t=n;t>0;t++) printf(“%d\n”,t); t=20*3; y=y*t } t=60*2; 累加公式s=6+8+10+ t=120*1; for(i=6;i>n;i=i+2) s=s+i
}
for(赋初值;循环条件;改变循环变量的值) { … … }
第3章 程序控制结构
6、设有说明语句 int a=1;则执行以下语句后 输出( B ) switch(a) { case 1: printf(“你好”); 你好再见 晚安 case 2: printf(“再见”); default: printf(“晚安”); }
√ B. break语句不仅能用在3条循环语句的循环体 √情况下,还可用在switch语句中
×
C. continue语句能用在switch语句中,在没有 循环情况下 D. continue语句不能退出循环体
A. break语句强制中断当前循环,退出循环体

第3章 程序控制结构
9、以下描述错误的是( C )

D. 使用while和do-while循环是循环变量的初始 化操作应在循环语句前完成

第3章 程序控制结构
10、以下关于for 循环语句的正确判断为( C ) int a,b; a=100; b=100; for (b=100; a!=b; ++a,b++) printf(“-----\n”); 100!=100?

C. 4
D. 3
第3章 程序控制结构
12、 求标有/*******/语句的执行次数( D ) int y=0,x=2; y x do{ do 0 2 5 4 y=x*x; /******/ while(++y<5); ++y y<5 }while(++y<5);
A. 5 C. 2
B. 4

D. 1

C.
102,10
第3章 程序控制结构
2、 执行下列语句后,a,b,c,x,y的值是( B

x int x=6,y=3,a,b,c; 6 5 a=(--x==y++)?++x:++y; (--x==y++)?++x:++y; --x x==y ++y y++ a=y b=x++; b=x x++ c=y; c=y A. 5 4 3 5 6 C. 5 4 55 6
第3章 程序控制结构 10、 #include<stdio.h>
main(){ int d=0,a=2; float m,s=0; do{ a=2*a; m=0.8*a; s=s+m;
d++;
}while(a<=100); printf("%f\n\n",s/d); }
第3章 程序控制结构
有一数列:2/1,3/2,5/3,8/5,…,求前10项和
A. 你好

B. 你好再见晚安
D. 你好再见
C. 你好晚安
第3章 程序控制结构
7、设E=1,语句while(!E);中的表达式!E !E 设E=1 等价于( B ) !E==1 E==0
A. E==1

B. E==0
C. E!=1
D. E!=0
第3章 程序控制结构
8、对break语句和continue语句,下面说法 不正确的是( C )
#include<stdio.h> main()//2/1,3/2,5/3,8/5,…,求前10项和
{int i;// s=0+2/1+3/2
float s=0; float a=2,b=1,t,temp; for(i=0;i<10;i++) { t=a/b; s=s+t; temp=a; a=a+b; b=temp; } printf("%f",s); }
第3章 程序控制结构
第3章
程序控制结构 习题
第3章 程序控制结构
一、单项选择题 (第80页)
第3章 程序控制结构
1、有以下程序: y x main() 10 102 { int x=102,y=012 x=102,y=012; printf(“%2d,%2d\n”,x,y); %2d %2d xy 102, 10 } 程序执行后输出结果是 ( C ) A. 10,01 B. D. 2,12 02,10

×
A. while循环是先判断表达式,后执行循环体 while(条件){ … }
B. do-while和for循环均是先执行循环体语句, 后判断表达式 do{…}while(条件); C. for,while,do-while循环中的循环体语句 均可以由空语句构成 do{ }while(条件); while(条件); for(条件);
j=012…
0 1 2 3
---* --** - *** ****
k=0123…
第3章 程序控制结构
5.输出九九乘法表 main() {int i,j; i<=9 for(i=0;_______i<=9;i++) { j<=i for(j=1;_______;j++) i*j printf(“%d*%d=%d”,j,i,______); printf(“\n”); 1*1=1 } 2*1=2 2*2=4 } 3*1=3 3*2=6 3*3=9
第3章 程序控制结构
三、程序填空
第3章 程序控制结构
1. 要求在运行程序时输入数据1,输出结果为 55(即1----10的和)s=1+2+3+…+10 main() {int sum=1,i; scanf(“%d”,&i); do i+=1 i++ ++i i=i+1 {________; sum+=i; }while(______); i<10 i<=9 printf(“%d”,sum); }
C. 3,3

B. 4,3 D. 4,4
第3章 程序控制结构
4、C语言允许if-else语句可以嵌套使用, 规定else总是与( D )配对。 A.其之前最近的if
B.第一个if
C.缩进位置相同的if

D.其之前最近的 且尚未配对的if
if(a>b) if(b<c) c=a; else c=b;
第3章 程序控制结构
第3章 程序控制结构
13、求标有/*******/语句的执行次数( C ) i y int y,i; 0 301 2 1 for i=0 i<20;i++ for(i=0;i<20;i++) { if(i%2==0) continue; if(i%2!=0) y+=i; /*******/ y+=i; } 奇数时语句执行
… 9*1=9 9*2=18 …
9*9=81
第3章 程序控制结构
7、编程求e=1+1/1!+1/2!+1/3!+1/4!+…+1/n!
main(){ float e=1.0; unsigned t=1,n=1; while(1/t>1e-6) { e=e+1/t; t=t*n; n=n+1; } printf("e=%f\n",e); }
A. 循环体只执行一次
B. 是死循环

C. 循环体一次也不执行 D. 输出-----
第3章 程序控制结构
11、求标有/*******/语句的执行次数( C ) int x=10; x++<20 while(x++<20) x<20,x++ x+=2; /*******/ 1: 10<20? x++ 2: 13<20? x++ 3: 16<20? x++ x+=2; x+=2; x+=2; 4: 19<20? x++ x+=2; A. 10 B. 11 5: 22<20? x++
相关主题