C. goto语句可以同时转向多条语句
D. goto语句可以从一个循环体内转到循环体外
3. 与以下程序段等价的是( ) while(a) { if(b) continue; c; }
A. while(a) { if(!b) c; } B. while(c) { if(!b) break; c; } C. while(c) { if(b) c; } D. while(a) { if(b) break; c; }
4. 在设计C++程序时,应采用的原则之一是( )
A. 不限制goto语句的使用 B. 减少或取消注释行
C. 程序越短越好 D. 程序结构应有助于读者理解
5. for(int m=n=0; !n&&m<=10; m++);语句的循环次数为( ) A. 10 B. 11 C. 12 D. 无限
6. 下面的do语句的循环体执行次数为( ) int a=10;
do { a--; }while(a!=0);
A. 10 B. 9 C. 11 D. 12
7. 下列for循环的循环体执行次数为(假设循环体中没有引用i和j)( ) for(int i=0, j=10; i=j=10; i++,j--)循环体; A. 0 B. 1 C. 10 D. 无限
8. 下列关于if语句的描述中错误的是( )
A. if语句中只有一个else子句 B. if语句中可以有多个else if子句 C. if语句中if体内不能是开关语句 D. if语句的if体中可以是循环语句
9. 下面的程序( ) #include
int a=5, b=4, c=3;
if( a = b+c ) cout<<”***”< A. 有语法错误,不能通过编译 B. 可以通过编译但不能通过连接 C. 输出*** D. 输出$$$ 10. 为了避免嵌套的if-else语句的二义性,C++规定else总是与( )组成配对关系。 A. 缩排位置相同的if B. 在其之前未配对的if C. 在其之前未配对的最近的if D. 同一行上的if 11执行下列程序,输入为1时的输出结果是( ) #include int k; cin>>k; switch(k) { case 1: cout< case 4: cout< cout< A. 1 B. 2 C. 2 3 4 5 D. 1 2 3 4 12. 下列while循环的循环次数为( ) while(int i=0)i--; A. 0 B. 1 C. 5 D. 无限 13. 下列do-while循环的循环次数为( ) 已知:int i=5; do { cout << i-- < 14. 下列描述正确的是( ) A.不是每个C++程序都必须包含预处理命令#include C. C++程序中的变量必须定义在主程序内部 D. C++程序中所使用的符号常量可以不进行定义 15. 已知int x,y;,下列switch语句中,正确的是( ) A. switch(x*y) B. switch { { case 1: x*y; break; case 1,5: x++; case 2: break; case 3,7: y++; } } C. switch(x) D. switch(x+y/100) { { case x: x*x; break; case x: x*x/100; break; case y: y*y; break; case y: y*y/100; break; } } 16. 下列关于goto语句的描述中正确的是( ) A. goto语句可以在一个程序中随意转向。 B. 循环体中不能出现goto语句 C. goto语句后面要跟上一个它所要转向的语句 D. goto语句不是结构化语句 17.执行以下程序段的输出结果是( ) int s1=0,s2=0,s3=0,s4=0; for(int t=1;t<=4;t++) switch(t){ case t>=4:s1++;break; case t>=3:s2++;break; case t>=2:s3++;break; default:s4++; } cout< A. 1,1,1,2 B. 1,2,3,2 C. 1,1,2,2 D. 编译不通过 18. 执行for(int i=10; i>1; --i) cout<<.*.;语句段后,输出字符“*”的个数是( ) A. 7 B. 8 C. 9 D. 10 二、写程序运行结果 1. 写出下面的程序的运行结果 #include int i,j,k; for(i=1; i<=6; i++) { for(j=1; j<=20-2*i; j++) cout<<” ”; for(k=1;k<=i; k++) cout< 2. 写出下面的程序的运行结果 #include int i,j,k; for(i=1; i<=6; i++) { for(j=1; j<=20-3*i; j++) cout << ” “ ; for(k=1; k<=i; k++) cout << setw(3) << k ; for(k=i-1; k>0; k--) cout << setw(3) << k ; cout< 3. #include char input[]=”SSSWILTECH1\\1\\11W\\1WALLMP1”; void main() { int i; char c; for(i=2; (c=input[i])!=’\\0’; i++) { switch(c) { case ‘a’: cout<<’i’; continue; case ‘1’: break; case 1: while((c=input[++i])!=’\\1’ && c!=’\\0’); case 9: cout<<’S’; case ‘E’: case ‘L’: continue; default: cout< cout<<” “; } cout< SWITCH SWAMP 4. #include int a,b,c,s,i; a=b=c=0; for(i=0; i<10; i++) { cin>>s; switch(s%3) { case 0: a+=s; break; case 1: b+=s; break; case 2: c+=s; break; } } cout< 假定输入的10个整数为:12,34,54,51,9,45,63,27,6,35,写出该程序的运行结果。 267,34,35 5. #include int i,j; for(i=1; i<=4; i++) { for(j=(4-i)*2; j>0; j--)cout<<” “; for(j=1; j<=2*i-1; j++)cout<<”*”; cout< for(i=3; i>=1; i--) { for(j=(4-i)*2; j>0; j--)cout<<” “; for(j=1; j<=2*i-1; j++)cout<<”*”;