**
第六章测试
**
1【判断题】 (10分)
有下列程序段,程序段运行后的输出结果##2##3##4##5( )。
int k;
for (k=2;k<6;k++,k++)
printf(“##%d”,k);
A.对
B.错
参考答案:B
2【判断题】 (10分)
在循环结构中break是终止循环,跳出循环体。
A.对
B.错
参考答案:A
3【单选题】 (10分)
以下不构成无限循环的语句组是( )。
A.int n=0,i;
for (n=0,i=1; ;i++)
n+=i;
B.
int n=10;
while (n);
n–;
C.
int n=0;
while (1)
n++;
D.
int n=0
do
{++n;}
while (n<=0);
参考答案:D
4【单选题】 (10分)
在C语言中有关for循环,下列正确的说法是( )。
A.for循环只能用于循环次数已经确定的情况。
B.for循环是先执行循环体语句,后判断表达式。
C.在 for循环中,不能用break跳出循环体。
D.for循环的循环体语句中,可以包含多条语句,但必须用花括号写成复合语句。
参考答案:D
5【单选题】 (10分)
有下列程序,程序运行后的输出结果是( )。
#include <stdio.h>
int main()
{
int i,sum;
for (i=1;i<6;i++) sum+=sum;
printf(“%d”,sum);
return 0;
}
A.15
B.14
C.不确定
D.0
参考答案:C
6【单选题】 (10分)
有下列程序,程序运行后的输出结果是( )。
#include <stdio.h>
int main( )
{
int i,j,a=0;
for (i=0;i<2;i++)
{
for (j=0;j<4;j++)
{
if (j%2) break;
a++;
}
a++;
}
printf(“%d”,a);
return 0;
}
A.4
B.6
C.7
D.5
参考答案:A
7【判断题】 (10分)
while与do-while在任何时候都可以互换。
A.对
B.错
参考答案:B
8【判断题】 (10分)
下面程序可以正确求出1+2+3+。。。+n的和。()
#include <stdio.h>
int main( )
{
int i = 1,sum = 0,n;
scanf(“%d”,&n);
while (i <= n)
sum = sum + i;
++i;
printf(“sum=%d”,sum);
return 0;
}
A.错
B.对
参考答案:A
9【单选题】 (10分)
以下程序中的变量已正确定义,程序段的输出结果是( )。
for(i=0;i<4;i++,i++)
for(k=1;k<3;k++); printf(“*”);
A.****
B.********
C.*
D.**
参考答案:C
10【单选题】 (10分)
有下列程序,程序运行后的输出结果是( )。
#include <stdio.h>
int main()
{
int i,j;
for (i=3;i>=1;i--)
{
for (j=1;j<=2;j++)
printf(" %d",i+j);
printf("\n");
}
return 0;
}
A.2 3
3 4
4 5
B.4 5
3 4
2 3
C.4 3 2
5 4 3
D.2 3 4
3 4 5
参考答案:B