发布时间 : 星期一 文章C语言流程控制练习题更新完毕开始阅读
流程控制
一、 选择题
1、在while(!a)中,其中!a与表达式(
A、a==0
B、a==1
)等价
D、a!=0
)
C、a!=1
2、设整型变量x的当前值是3,执行以下循环语句后,输出的结果是(
do
printf(“%d”,x-=2);
while(!(--x)); A、0
B、1
-2
C、3
0
D、死循环,输出许多值 )
(3)if(a!=0) s1; else s2; C、只有(2)和(3)等价
3、对下面三条语句,正确的论断是(
(1)if(a)s1; else s2; (2)if(a==0) s2; else s1; A、三者相互等价
B、三者相互不等价
D、以上三个说法都不正确
)
4、对于for(表达式1;;表达式3)可理解为(
A、for(表达式1;0;表达式3)
B、for(表达式1;1;表达式3)
C、for(表达式1;表达式1;表达式3) D、for(表达式1;表达式3;表达式3)
)
5、执行以下程序段的输出是(
for(i=1;i<7;i++)
{
if(i%3==0) break; printf(“%d”,i);}
A、1 2 3 4 5 6 B、1 2 4 5
)
C、1 2 3 D、1 2
6、执行以下程序段的输出是(
for(i=1;i<7;i++) {
if(i%3==0) continue;
printf(“%d”,i);}
C、1 2 3
D、1 2
A、1 2 3 4 5 6 B、1 2 4 5
二、阅读程序题
1、当前整型变量i的值是10,执行下列switch语句后,i的值是___13__________
switch(i) {
case 9: i+=1; case 10: i+=1; case 11: i+=1;
default: i+=1;}
2、若整型变量w=1,x=2,y=3,z=4,则条件表达式w>x?w:z>y?z:x的值为_____4_____。 ****3、若有程序 main() {
int i=1; while(i++<5); 4、main()
{
int a,b,c; a=2;b=3;c=1; if(a>b)
if(a>c) printf(“%d”,a); else printf(“%d”,b);
printf(“end”);}输出结果为_____end_________。
5、main()
{
int a,b,c; a=2;b=3;c=1; if(a>b)
{if(a>c) printf(“%d”,a);} else printf(“%d”,b);
printf(“end”);}_______3_____。 三、完善程序题
1、用0~9之间不同的数字构造所有可能的三位数(即个位、十位和百位上的数字各不
printf(“%d”,i);}运行后的输出结果是__6__________。
相同),并统计出共有多少种。
main() {
int i,j,k,count=0;
for(i=1;i<=_______9______;i++)
for(j=0;j<=__________9_________;j++)
if(__________i=j__________)continue; else for(k=0;k<=9;k++)
if(____________k!=i _&& k!=j_________________) {
printf(“%d,”,100*i+10*j+k); count++;}
printf(“\\nTotal=%d”,count);}
2、求f(x)=-x2/2!+x4/4!-x6/6!+x8/8!……,要求精度为十万分之一。
#include
double x,y,t;
int n=0; printf(“Input x:”); scanf(“%f”,&x); t=1;
_______________________; while(fabs(t)>1e-6) {
n++;
t=___________________________________; y+=t;}
printf(“f(%f)=%f”,x,y);}
四、编程
1、利用三种循环计算1+2+3+……+100的值
2、输出九九乘法表
3、求两个正整数的最大公约数和最小公倍数
4、求出所有水仙花数
1*1=1 1*2=2 2*2=4 1*3=3 2*3=6 3*3=9 ……
5、找出100以内的所有完数
各个小于它的约数(真约数)的和等于它本身的自然数叫做完全数(Perfect number),又称完美数或完备数。(列出某数的约数,去掉该数本身,剩下的就是它的真约数) 第一个完全数是6,它有约数1、2、3、6,除去它本身6外,其余3个数相加,1+2+3=6。第二个完全数是28,它有约数1、2、4、7、14、28,除去它本身28外,其余5个数相加,1+2+4+7+14=28。
6、从键盘上输入3个整数,输出其中的最大值
7、2006年1月1日是星期一,设计程序,输入2007年的月份和日期,计算该天是星期几