C语言谭浩强版6章课后练习题答案
第6章课后练习题
单项选择题
以下程序执行后,a是:
int a =0,i,j;
for (i=5;i>0;i--)
for(j=0;j<4;j++) a++;
20
25
24
30
执行以下程序段,正确的是:
int x=-1;
do {x=x*x; } while(! x);
循环体将执行一次
循环体将执行两次
循环体将执行无限次
系统将提示有语法错误
执行以下程序int y=10; do { y - -;} while(- - y); printf("%d\n",y - -);输出的结果是:
-1
1
8
0
在下列选项中,没有构成死循环的程序段是:
int i=100 ;
while(1)
{ i=i%100+1;
if(i>100) break; }
for( ; ;) ;
int k=1000; do{++k;} while(k>=10000);
int s=36; while(s);--s;
执行语句: for(i=l;i<4;i++);后,变量i的值是:
3
4
5
不定
以下叙述正确的是:
do-while语句构成的循环不能用其它语句构成的循环来代替。
do-while语句构成的循环只能用break语句退出。
用do-while语句构成的循环,在while后的表达式为非零时结束循环。
用do-while语句构成的循环,在while后的表达式为零时结束循环。
下列程序执行后,输出结果是: main() { int i, j, m=0; for(i=0; i<2; i++) for(j=0; j<2; j++) if(j>=i) m++;
printf("%d \n",m); }
1
2
3
4
以下程序段的执行结果是:
int a, y; a=10; y=0; do { a+=2; y+=a; printf("a=%d y=%d\n",a,y); if(y>20) break; } while(a=14);
a=12 y=12
a=12 y=12回车换行a=16 y=28
a=12 y=12回车换行a=14 y=26
a=12 y=12回车换行a=14 y=26回车换行a=16 y=28
Break语句的正确的用法是:
无论在任何情况下,都中断程序的执行,退出到系统下一层。
在多重循环中,只能退出最靠近的那一层循环语句。
跳出多重循环。
只能修改控制变量。
忽略循环体后面语句,继续执行下一次循环的是:
break语句?????
return语句????
continue语句????
空语句。
语句 while(!E); 中的条件 !E 等价于:
E = = 0
E ! =1
E ! =0
~E
关于for(x=0,y=0; (y!=123)&&(x<4); x + + );正确的是:
是无限循环
循环次数不定
执行 4 次
执行 3 次
关于C 语言,正确的是:
不能使用 do-while 语句构成的循环
do-while 语句构成的循环必须用 break 语句才能退出
do-while 语句构成的循环,当 while 语句中的表达式值为非零时结束循环
do-while 语句构成的循环,当 while 语句中的表达式值为零时结束循环
以下正确的描述是 :
continue 语句的作用是结束整个循环的执行
只能在循环体内和 switch 语句体内使用 break 语句
在循环体内使用 break 语句或 continue 语句的作用相同
从循环嵌套中退出时,只能使用 goto 语句
设有程序段
t=0;
while(printf(“*”))
{
t++;
if(t<3) break;
}
则下面描述正确的是。
A)其中循环控制表达式与0等价B)其中循环控制表达式与‘0’等价
C)其中循环控制表达式是不合法的D)以上说法都不对
C语言中while和do-while循环的主要区别是:
do-while的循环体至少无条件执行一次
while的循环控制条件比do-while的循环控制条件严格
do-while允许从外部转到循环体内
do-while的循环体不能是复合语句以下能正确计算1×2×3×…×10的程序段是:
A)do{i=1; s=1;B)do{i=1; s=0;
s=s*i; s=s*i;
i++; i++;
}while(i<=10); }while(i<=10);
C)i=1; s=1;D)i=1; s=0;
如果觉得《c语言教材课后题答案6 C语言谭浩强版6章课后练习题答案.doc》对你有帮助,请点赞、收藏,并留下你的观点哦!