一. 单选题
1.执行语句序列( C )。
int i=0;
while(i<25)i+=3;
cout <<i;
输出结果是
A.24
B. 25
C. 27
D. 28
2. 有如下程序:
#include< iostream>
using namespace std;
int main( )
{
int x=3;
do
{
x-=2;
cout<<x;
}
while(!(–x));
return 0;
}
执行这个程序的输出结果是( C )。
A.1
B. 30
C. 1-2
D. 死循环
3. 执行下列语句段后,输出字符“”的个数是( B )。
for(int i=50;i>1;–i)cout<<’’;
A. 48
B. 49
C. 50
D. 51
4.如下程序:
#include< iostream>
using namespace std;
int main( )
{
int sum;
for(int i=0; i<6; i+=3)
{
sum=i;
for(int j=i; j<6; j++)sum+=j;
}
cout<<sum<<endl;
return 0;
}
运行时的输出结果是( D )。
A. 3
B. 10
C. 12
D. 15
5.有如下程序段:
#include< iostream>
using namespace std;
int main( )
{
int i=5;
while(int i=0)
{
cout<<’’;
i–;
}
return 0;
}
运行时输出字符“”的个数是( A )。
A.0
B. 1
C. 5
D. 无穷
6. 有如下程序段:
#include< iostream>
using namespace std;
int main( )
{
int i=1;
while(1)
{
i++;
if(i= =10)
break;
if(i%2= =0)
cout<<’’;
}
return 0;
}
执行这个程序段输出字符“”的个数是( C )。
A. 10
B. 3
C. 4
D. 5
7. 下列循环语句中有语法错误的是( D )。
A.int i;for(i=1;i<10;i++)cout<<’’;
B.int i,j;for(i=1;j=0;i<10;i++,j++)cout<<’’;
C.int i=0;for(;i<10;i++)cout<<’’;
D.for(1) cout<<’’;
8. 有如下程序:
#include< iostream>
using namespace std;
int main( )
{
int f,f1=0,f2=1;
for(int i=3;i<=6;i++)
{
f=f1+f2;
f1=f2;
f2=f;
}
cout<<f<<endl;
return 0;
}
运行时的输出结果是( C )。
A.2
B.3
C.5
D.8
9. 有如下程序:
#include< iostream>
using namespace std;
int main( )
{
int i,s=0;
for(i=1; s<20; i+=2)
s+=ii;
{
cout<<i<<endl;
return 0;
}
}
运行这个程序的输出结果是( C )。
A.3
B.5
C. 7
D. 9
10.while(!x)中的(!x)与下面条件( D )等价。
A. x= =1
B. x!=1
C. x!=0
D. x= =0
11.已知int i=5,下列do-while循环语句的循环次数为( D )
#include< iostream>
using namespace std;
int main( )
{
short i=5;
do
{
<<i–<<endl;
i–;
}
while(i!=0);
}
A. 0
B. 1
C. 5
D. 无限
12.下面程序段( B )
#include< iostream>
using namespace std;
int main( )
{
int x=3,y;
do
{
y=x–;
if(!y)
{
cout << “x”;
continue;
}
cout<<"#";
}while(x>=1 && x<=2);
A. 将输出##
B. 将输出###
C. 死循环
D. 含有不合法的控制表达式
13.for(int x=0,y=0;!x&&y<=5;y++)语句执行循环的次数是( C )
A. 0
B. 5
C. 6
D. 无限
14.下面有关for循环的正确描述是( D )
A.for循环只能用于循环次数已经确定的情况
B.for循环是先执行循环体语句,后判断表达式
C.在for循环中,不能用break语句跳出循环体
D.for循环的循环体语句中可以包含多条语句,但必须用大括号括起来
15.C++语言的跳转语句中,对于break和continue说法正确的是( B )
A.break语句只应用于循环体中
B.continue语句只应用于循环体中
C.break是无条件跳转语句,continue不是
D.break和continue的跳转范围不够明确,容易产生问题
二. 填空题
16.写出下面程序的运行结果
#include < iostream>
using namespace std;
int main()
{
int s;
for(int k=2;k<6;k+=2)
{
s=1;
for(int j=k;j<6;j++)
s+=j;
}
cout<<s<<endl;
return 0;
}
正确答案:10
17.写出下面程序的运行结果
using namespace std;
#include < iostream>
int main()
{
int a=3;
a+=a-=aa;
cout<<a<<endl;
return 0;
}
正确答案:-12
18.写出下面程序的运行结果
#include < iostream>
using namespace std;
int main()
{
int x,y,t;
x=y=3;
t=++x||++y;
cout<<y<<endl;
return 0;
}
正确答案:3
19. 写出下面程序的运行结果
#include < iostream>
using namespace std;
int main()
{
int n=9;
while(n>6)
{
n–;
cout<<n;
}
return 0;
}
正确答案:876
20.写出下面程序的运行结果
#include < iostream>
using namespace std;
int main()
{
int x=20;
while(x>10&&x<50)
{
x++;
if(x/3)
{
x++;
break;
}
else
continue;
}
cout<<x<<endl;
return 0;
}
正确答案:22