高二《C程序设计》月假作业
姓名:
选择题:
1、对for(表达式1;;表达式3)可理解为( )。 A.for(表达式1;0;表达式3) B.for(表达式1;表达式3;表达式3) C.for(表达式1;1;表达式3) D.for(表达式1;表达式1;表达式3) 2、以下叙述正确的是( )
A.不能使用do-while语句构成的循环
B.do-while语句构成的循环必须用break语句才能退出
C.do-while语句构成的循环,当while语句中的表达式值为非零时结束循环 D.do-while语句构成的循环,当while语句中的表达式值为零时结束循环 3、以下描述正确的是( )
A.由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句 B.do-while循环由do开始,用while结束,在while(表达式)后面不能写分号 C.在do-while循环体中,一定要有能使while后面表达式的值变为零(假)的操作 D.do-while循环中,根据情况可以省略while 4、下面有关for循环正确的描述是( ) A.for循环只能用于循环次数已经确定的情况 B.for循环是先执行循环体语句,后判断表达式 C.在for循环中,不能使用break语句跳出循环体 D.for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来 5、int n=0,p; do {
Scanf(“%d”,&p);n++;} While(p!=12345 && n<3);
此处do-while循环的结束条件是( ) A.p的值不等于12345并且n的值小于3 B.p的值等于12345并且n的值大于等于3 C.p的值不等于12345或者n的值小于3 D.P的值等于12345或者n的值大于等于3 6、以下程序的运行结果为( ) #include
for(k=2;k<6;k++,k++) { s=1;
for(j=k;j<6;j++) s+=j; }
Printf(“%d\\n”,s); } A.9 B.1 C.11 D.10 7、下面程序的运行结果是( ) #include
{ int a=1,b=2,c=2,t; While(a
1 / 5
{ t=a;a=b;b=t; /*a,b交换*/ c--; }
Printf(“%d,%d,%d”,a,b,c); }
A.1,2,0 B.2,1,0 C.1,2,1 D.2,1,1
8.以下能正确计算1*2*3*4*5*6*7*8*9*10的程序段是( )
B.do { i=1;s=0; C.i=1;s=1; D.i=1;s=0; A.do { i=1;s=1;
S=s*I; S=s*I; do { s=s*I; do { s=s*I; i++; i++; i++; i++; } while(i<=10); } while(i<=10); }while (i<=10); } while (i<=10); 9、设有以下程序段: int x=1,s=0;
while(0!=0) s+=++x; printf(“%d”,s); 则( )
A.运行程序段后输出0 B.运行程序段后输出1 C.程序段中的控制表达式是非法的 D.程序段执行无限次 10、以下程序的输出结果是( ) #include
for (i=1;i<5;i++) { switch (i) {
case 0:
case 3:a+=2; case 1: case 2:a+=3; default:a+=5; } }
Printf(“%d\\n”,a); }
A.31 B.13 C.10 D.20 11、以下程序运行结果为( )
#include
for (i=1;i<=15;i+=4) 1\\5\\9\\13\\
for(j=3;j<=19;j+=4) 3\\7\\11\\15\\19 m++;
printf(“%d\\n”,m); } A.12 B.15 C.20 D.25 12、以下程序的运行结果为( ) # include
2 / 5
void main() { int i;
for (i=1;i<=5;i++) 1\\2\\3\\4\\5\\6 { if (i%2) printf(“*”); else continue; printf(“#”); }
printf(“$\\n”); }
A.*#*#*#$ B.#*#*#*$ 13、有如下程序:
#include
{ printf(“%d”, x --); 23 22 } while(!x); }
该程序的执行结果是( ) A.321 B.23
14、下面程序的运行结果是( )
# include
do {--y;} while (0); Printf(“%d\\n”,y--);-1 }
A.-1 B.1 15.有如下程序: #include
while (n>6) {n--; 8\\7\\6 printf(\ } }
该程序的输出结果是( ) A.987 B.876 16、有以下程序:
C.*#*#$ C.不输出任何内容C.8 C.8765 3 / 5
D.#*#*$
D.陷入死循环D.0
D.9876
#include
{ if (i%2)
{ i++;continue; } i++; s+=i; } while (i<7); Printf(“%d\\n”,s);
}
执行后输出的结果是( ) A.16 B.12 C.28 17、以下程序的输出结果是( )
#include
while (i<20) 0\\11\\21 { for (;;)
{ if (i==0) break; else i--; 10 }
i+=11; 21
a+=i; 32 }
printf(“%d\\n”,a);} A.21 B.32 C.33 18、有以下程序段:
int k=0;
while (k=1) k++;
while循环执行的次数是( ) A.无限次 B.有语法错误,不能执行 C.一次也不执行 D.执行1次
19、以下程序中,while循环的循环次数是( ) #include
while(i<10) 0 { if (i<1) continue; if(i==5) break; i++; } } A.1 B.10 C.6
4 / 5D.21
D.11
D.死循环,不能确定次数
20、以下程序执行后sum的值是( )
#include
for(i=1;i<6;i++) 1 sum+=i;
printf(“%d\\n”,sum); } A.15 B.14
C.不确定 D.0
5 / 5