C语言程序设计题目及解答-05.doc
一、判断题?(6分)
1. 在多重循环结构中,使用break语句,可以跳出整个循环。2分
2. 多重循环是指循环语句的循环体中,又嵌套了另一个或多个循环语句,多个内层循环可以相互交叉嵌套。2分
3. continue语句用在循环体中,可使整个循环不结束。2分
二、选择题?(16分)
1.在C语言的循环语句for,while,do-while语句中,用于直接中断最内层循环的语句是:[C]
A. switch?????B. continue?????C. break?????D. if
2.请读程序:
#include
main()
{
int a, b ;
for(a = 1 , b = 1 ; a <= 100 ; a++) {
if(b >= 20) break ;
if (b%3 == 1) { b += 3 ; continue ; }
b -= 5 ;
}
printf("%d", a) ;
}
上面程序的输出结果是______。???[B] 2分
A. 7?????B. 8?????C. 9?????D. 10
3.以下程序中,while循环的循环次数是______。???[D] 2分
main()
{int i=0;
while(i<10)
{ if(i<1) continue;
if(i==5)break;
i++;
}
......
}
A. 1?????B. 10?????C. 6?????D. 死循环,不能确定次数
4.#include
main()
{ int i=0,a=0;
while(i<20)
{ for(;;)
{ if((i%10)==0) break;
else i--;
}
i+=11; a+=i;
}
printf("%d",a);
}???[B] 2分
A. 21?????B. 32?????C. 33?????D. 11
5.以下程序的功能是:按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出,程序如下:
main()
{int n,k;
float score,sum,ave;
sum=0.0;
for(n=1;n<=10;n++)
{for(k=1;k<=4;k++)
{scanf("%f",&score); sum+=score;}
ave=sum/4.0;
printf("NO%d:%f\n",n,ave);
}
}
上述程序运行后结果不正确,调试中发现有一条语句出现在程序的位置不正确。这条语句是______。???[A] 2分
A. sum=0.0;?????B. sum+=score;?????C. ave=sum/4.0;?????D. printf("NO%d:%f\n",n,ave);
6.有以下程序
main()
{ int a=5,b=4,c=3,d=2;
if(a>b>c)
printf("%d\n",d);
else if((c-1>=d)==1)
printf("%d\n",d+1);
else
printf("%d\n",d+2);
}
执行后输出的结果是______。???[B] 2分
A. 2?????B. 3?????C. 4?????D. 编译时有错,无结果
7.有以下程序
main()
{ int i=0,s=0;
do{
if(i%2){i++;continue;}
i++;
s+=i;
} while(i<7);
printf("%d\n",s);
}
执行后输出的结果是______。???[A] 2分
A. 16?????B. 12?????C. 28?????D. 21
8.下列语句中,哪个可以输出26个大写英文字母()。???[C] 2分
A. for(a='A'; a<='Z'; printf("%c",++a));B. for(a='A'; a
三、程序填空题?(48分)
1. 功能:输