南京理工大学程序设计基础(Ⅰ)MOOC课后习题
第四章 基本语句
第4章测试
1、执行语句:for(int k=43210;k=k/10;cout<<k%10); 其输出结果是:A
A、1234
B、01234
C、4321
D、43210
2、执行程序段: int x,y; x=3; do { y=x--; if(!y) {cout<<'#'; continue;} cout<<'#'; } while((x=1)||(x=2)); C
A、将输出##
B、将输出###
C、将进入死循环
D、将输出#
【注意】while后的是=而不是==,“=”是赋值,除0外恒为真,如果是==,答案选B
3、执行程序段: int x=6; do { if(x%3) {cout<<'#'; continue;} } while(x--); D
A、将输出#
B、将输出##
C、将输出###
D、将输出####
【注意】continue表示继续下一次循环,自增量正常自增
4、执行以下语句,输出结果是 int x=3; do{ cout<<(x-=2)<<" "; }while(!--x);C
A、1
B、3 0
C、1 -2
D、0 -1
5、执行以下程序段 int k=5,n=0; while(k--) switch(k) { case 1: case 3:n+=1;break; default:n+=2; case 2: case 4: n+=3;break; }后,n和k的值分别为:B
A、10 -1
B、13 -1
C、8 0
D、10 0
【注意】while语句中后自减为先自减再进行第一轮循环
6、以下语句段执行结果: int a=2,b=0; while(!b--)cout<<a--<<' '<<b; A
A、2 -1
B、1 -1
C、没有输出
D、2 0
7、在下列选项中,没有构成死循环的语句段是:C
A、int i=100;while(1){i=i%100;if(i>=100)break;}
B、for(;;);
C、int k=1000;do{k;}while(k>1000);
D、int s=3;while(s);--s;
???8、以下说法正确的是:A
A、while语句中,循环体语句可能是一条语句,也可能没有语句。
B、执行do-while语句时,可能不执行循环体语句。
C、for语句如果第2个表达式为空,则必然进入死循环。
D、do-while语句总能用while或for语句实现
9、已有预处理命令“#include <cmath>”和声明“int a=4,b;”,以下语句中语法正确的是:C
A、if(a%2=1) b=a;
B、if(sqrt(a)%2) b=a;
C、if(a==1) b=a;
D、if(a==1) b=*a;
【注意】sqrt()函数返回值为double,”%”运算符要求两边均为整型
10、运行下面程序段: for (int i = 1,sum = 0; i < 5; i++){ if (!(i%3)) continue; sum += i; }变量sum的值为:C
A、0
B、3
C、7
D、10
11、下列程序的输出结果是 。 using namespce std; #include <iostream> int main() { int x=1,i=1; for (; x < 50; i++) { if(x >= 10) break; if(x % 2 != 0){ x += 3; continue; } x-=-1; } cout<<x<<' '<<i<<endl; return 0; }C
A、12 7
B、11 6
C、12 6
D、11 7
12、有下面语句,输出结果为__C___。int x = 3;do{cout<<(x-=2)<<" ";}while (!(--x));
A、1
B、3 0
C、1 -2
D、死循环
13、有下面语句段,输出结果为__C___。 using namespace std; #include <iostream> int main(){ char c = 'B'; switch (c) { case 'A':cout << "1"; case 'B':cout << "2"; case 'C':cout << "3"; default: cout << "4"; } return 0; }
A、2
B、23
C、234
D、编译错误
14、下列for 语句的循环次数为: for (int i = 1; i <= 5; sum++) sum += i; A
A、5
B、4
C、0
D、无限
15、下列程序的输出结果是 。 using namespace std; #include <iostream> int main() { int n = 'm'; switch(n++){ default: cout<<"error";break; case 'k':case 'K':case 'l':case 'L':cout<<"good"<<endl;break; case 'm':case 'M':cout<<"pass"<<'\t'; case 'n':case 'N':cout<<"warn"<<endl; } return 0; }C
A、pass
B、warn
C、pass warn
D、error