6、个位和十位数字是否相同,在划线处__应该填写表达式()。intnum;scanf("%d",&num);if(num>=1000&&num<10000)if(__)printf("该4位自然数个位和十位数字相同");elseprintf("该4位自然数个位和十位数字不同");A.num%10==num/10%10B.num/1000==num%10C.num/10%10==num/100%10D.num/100%10==num%10答案:A4、下面程序的运行结果是()。#includeintmain(v
7、oid){inta=1,b=2,c=3;if(a==1&&b==2)if(b!=2
8、
9、c!=3)printf("%d,%d,%d",a,b,c);elseprintf("%d,%d,%d",a,b,c);elseprintf("%d,%d,%d",a,b,c);return0;}A.1.3.3B.1,3,2C.1,2,3D.3,2,1答案:C5、如有定义语句inta,b;doublex;则下列选项中没有错误的是()。提示:(int)x表示将变量x的值强制转换成int类型。若x初始值为3.2则(int)x的结果是int
10、类型,值为3。A.switch(x%2){case0:a++;break;case1:b++;break;default:a++;b++;}B.switch((int)x%2){case0:a++;break;case1:b++;break;default:a++;b++;}C.switch(x%2){case0:a++;break;case1.0:b++;break;default:a++;b++;}D.switch((int)x%2.0){case0:a++;break;case1:b++;break;default:a++
11、;b++;}答案:B6、对于以下代码:inti=6;if(i<=6)printf("hello");;elseprintf("bye-bye");;下面哪句话是对的?A.打印出"hello"B.打印出"hellobye-bye"C.打印出"bye-bye"D.不能通过编译答案:D7、在代码:while(!e)中,!e等价于()。A.e==0B.e!=0C.e==1D.e!=1答案:A8、对于以下代码:inti=6;do{printf("%d",i--);}while(0);哪句话是对的?A.打印不出东西B.打印出5C.打
12、印出6D.因为while(0),无法编译答案:C9、对于以下代码:inti;for(i=0;i<10;i++)printf("%d",i);for循环后,i的值是多少?A.9B.i不存在C.10D.i没有确定的值答案:C10、以下哪个for语句是错误的?A.for(i=0;i<10;i--);B.for(i=0,j=0;i<10;i++;j++);C.for(i=0;i<10,j<10;i++);D.for(i=0;j<10;j++);答案:B11、对for(表达式1;;表达式3)可理解为()。A.for(表达式1;1;表达式3
13、)B.for(表达式1;表达式3;表达式3)C.for(表达式1;表达式1;表达式3)D.for(表达式1;0;表达式3)答案:A12、循环语句while(x%3)a++;中的表达式x%3等价于()。A.x%3==1B.x%3!=0C.x%3==2D.x%3==0答案:B13、循环语句while(!x&&!y)中的循环条件表达式等价于()。A.x=0&&y=0B.!(x
14、
15、y)C.!(x==0
16、
17、y==0)D.!(x==0&&y==0)答案:B14、假设有定义:intk;下面代码编译运行的情况是()。for(k=1;k;k++)
18、printf("%d",k);A.编译错误B.能运行,正常结束C.以上说法都不对D.能运行,是死循环答案:B15、对于intx,y;语句if(x<0)y=-1;elseif(!x)y=0;elsey=1;等价于()。A.y=0;if(x!=0)if(x>0)y=