当前位置:首页 > C语言习题
case '*':r=x*y;break; case '/':r=x/y;break; }
printf(\
}
A.0.6 B.0.600000 C.15 D.8 (47)以下程序的运行结果是( )。
main() {int x,y,z; x=1;y=1;z=0; x=x||y&&z;
printf(\,%d\,x&&!y||z); }
A. 1,0 B. 0,1 (48)以下程序的运行结果是( )。
main() { int a,b,c;
int s,w=0,t=0; a=-1;b=3;c=3; if(c>0)s=a+b; if(a<=0) if(b>0)
w=a-b;
else if(c>0)w=b-a; else t=c;
printf(\}
A. 2,-4,0 B. 2,0,0 (49)下列程序段的运行结果是( )
int n=0; if (n++<3); printf(\
A. 2 B. 3 C. 4 (50)选择运行结果为4的表达式( )
A. int i=0, j=0,t;
t=(i=3,(++j)+i); printf(“%d”,t);
B. int i=1, j=0;
j=i=((i=3)*2);
C. int i=0, j=1;
i=(j==1)?(i=1):(i=3);
D. int i=1,j=1;
i+=j=2;
C.1,1 D.0,0 C. 5,0,0 D. 以上都不对
D.都不对
二、判断题
(1)else语句总是和靠它最近的尚未配对的if匹配。(√) (2)switch语句中一定有default分支 。(×) (3)case后只能跟常量,不能跟变量。(√) (4)if(表达式)语句1 else 语句2 结构中,如表达式为a>10,则else的条件隐含为a<10。
(×)
(5)可以用swicth结构实现的程序都可以使用if语句来实现。(√) (6)switch?case结构中条件表达式和常量表达式值可以为float类型。(×) (7)由float x=3e-6,y=3e-6;可得x==y的逻辑值为真。(×) (8)语句int a=2;if(a=3)b=1;执行后b的值是1。(√) (9)所有关系运算符的运算优先级相同。(×)
(10) switch后面园括号内的表达式的值和case后面的常量表达式都必须是整型或字符型,
不允许是浮点型。(√)
(11)两个变量交换数据时常使用一个工作变量。(√)
(12)switch语句的结束发生在break;语句的执行或者switch语句的“}”。( √) (13)逻辑运算符的运算优先级低于算术运算符的运算优先级。(×) (14)执行a=0;if(0);a=3;后a的值为3。(√)
(15) 假定变量a,b,c在说明时已赋初值,则if ((a=b;)>0) c=a;是正确的。 (×) (16)int i=20;switch(i/10){case 2:printf(\的输出结果为A。( × ) (17)在C程序中,条件运算符是一个三目运算符。(√)
(18)求解表达式max=(a>b)?a:b的步骤是,先求解条件表达式(a>b),再根据它的值将a或b
赋给max。(√)
(19)语句if(a>b) printf(\可以用条件表达式a>b?a:b取代。(×) (20)语句if(a>b) printf(\可以用语句 printf(\取代。
(√)
(21) 条件表达式x?'a':'b'中,若x=0时,表达式的值为'a'。(×) (22) 在C语言中,逗号既可以作为运算符,也可以作为分隔符。(√) (23) case语句后如果没有break,顺序向下执行。(√) (24) if (a=5)是允许的。(√)
(25) 在switch语句中,case后若是多个语句可不必用花括号括起来构成复合语句。(√) (26) 在逻辑运算符中,逻辑非运算符!的优先级最高。(√) (27) 在C语言中switch语句必须使用break语句。(×)
(28) if语句无论写在几行上,都是一个整体,属于同一个语句。(√) (29) 在if语句中,有if必须有else。(×)
(30) C语言编译系统在表示逻辑运算结果时,以数值1代表“真”,以0代表“假”。(√) (31) 在if语句中,else前一个语句可不加\。(×)
(32) a=3,b=2,c=1 则关系表达式\的值为\真\。(√)
(33) 程序的基本结构中选择结构又叫分支结构,有单分支与多分支两种。(√)
(34) 在C语言的if语句中,用作判断的表达式为关系表达式、逻辑表达式或算术表达式。
(√)
(35) 关系表达式 a=b > c 等价于 a= =b >c。(×) (36) 逻辑表达式 'C'&&'d' 的值为1。(√)
(37) 已知x=43,ch='A',y=0;则表达式(x>y&&ch<'B'&&!y)的值为\假\。(×) (38) 若有条件表达式(x)?a++:b++;则表达式中(x)等价于(x!=0)。(√)
(39) 逻辑表达式4>2&&1||5<3-!0的值为1。(√) (40) 选择结构可以使用嵌套形式。(√)
(41) C语言提供的三种逻辑运算符的运算优先级相同。(×) (42) 条件运算符“?:”是C语言中唯一一个三目运算符。(√) (43) break只能用于switch语句中。(×)
(44) 逻辑运算符的运算对象的数据类型是任何类型的数据。(√) (45) 多分支语句switch(a)中表达式a的类型只能是整型或字符型。(√) (46) int a=0, b=13; 则执行 ++a||b--; a的值为 1,b的值为 13。(√)
(47) 判断char型变量ch是否为大写字母的正确表达式是:(‘A’<=ch)AND(‘Z’>=ch)。(×) (48) 在C语言中,if 语句可以单独使用。(√) (49) 在C程序中,判断逻辑值时,用“非0”表示逻辑值“真”, 又用“0”表示逻辑值“假”。(√) (50) 逻辑型属于C语言的数据类型。(×)
第五章 循环结构程序设计
一、选择题
(1) 下面程序的运行结果是( )。
main(){ int x=3; do{printf(\ A. 死循环 B. 1 -2 C. 10 D. 1 (2) 下面程序的运行结果是( )。 main()
{int i,j,k,sum; for(i=2;i<7;i++) {sum=1;
for(j=i;j<7;j++) sum=sum+j; } printf(“%d”,sum); }
A. 48 B. 49 C. 1 D. 7 (3)以下不正确的描述是( )。
A.break语句只能用于循环语句和switch语句。
B.在switch语句中,break语句的作用也可用continue语句来替代。
C.在循环语句中,使用continue语句是为了结束本次循环,而不是终止循环的执行。 D.在循环语句中,使用break语句是为了使流程跳出循环体,提前结束循环 (4)while(!x)中的条件表达式(!x)与下面条件( )等价。 A.x==0 B.x==1 C.x==0|| x==1 D.x!=0 (5)运行下面的程序,其输出是( )。 void main() {int i=1; while(i<19)
if(i++%5!=3) continue; else printf(“%d”,i); printf(“\\n”);
}
A.2 5 7 9 11 13 15 17 B.3 6 9 12 15 18 C.4 9 14 19 D.3 8 13 17 19 (6)下面程序运行后,其输出是( )。 void main() {int i; int n=2;
while(++n<20) {i=1; while(++i)
{if(n%i==0) break;
if(i==n-1) printf(“%d\\t”,n); }
printf(“\\n”); } }
A.2 5 7 9 13 17 19 B.3 5 7 11 13 17 19 C.2 3 5 7 11 13 17 19 (7)该程序的输出结果是( )。 m=37;n=13; while(m!=n) {
while(m>n) m=m-n; while(n>m) n-=m; }
printf(\ 输出结果为:
A. m=13 B. m=11 C. m=1 D. m=2 (8)下面这个程序的输出是( )。 #include
int y=10; while(y--);
printf(\ }
A. y=0 B. while构成死循环 C. y=1 D. y=-1 (9) 以下程序中,while循环的循环次数是( )。 void main() { int i=0;
while(i<10)
{ if(i<1) continue; if(i==5) break;
i++;
D.3 5 7 11 13 17 20
共分享92篇相关文档