1、第五章 选择结构第五章 选择结构一、选择题1 关于C程序在作逻辑运算时判断操作数真、假的表述中,正确的是_。 A) 0为假非0为真 B) 只有l为真 C) -l为假,l为真 D) 0为真,非0为假2 关于C程序关系运算、逻辑运算后得到的逻辑值的表述中,正确的是_。 A) 假为0,真为随机的一个非0值 B) 假为0,真为1 C) 假为-l,真为l D)假为0,真为不确定的值3 下列运算符中,优先级从高到低依次为_。 A) ! | B) | ! C) | ! D) ! & |4 设int a1,b2,c=3,d=4,m=2 ,n=2;执行(mab)&(ncd)后n的值为_。 A) l B) 2 C
2、) 3 D) 45 若有定义:int a=3,b2,c=1;并有表达式:ab,abc,b&c+1, c+=1,则表达式值相等的是_。 A) 和 B) 和 C) 和 D) 和6 设int i=10;表达式30-i=i=9的值是_。 A)0 B) 1 C)9 D)207 设 int a=0,b=0,m=0,n0;则执行(ma= =b)|(n=b= =a)后m和n的值是_。 A) 0,0 B) 0,1 C) 1,0 D) 1,18 表达式!x等效于_。 A) x= =l B) x= =0 C) x!=l D) x!=09 int a=1,b=2,c=4;经过表达式(c=a!=b)&(a= =b)&(
3、c=b)运算后,a,b和c的值分别是_。 A) 1,2,0 B) 1,2,1 C) 1,2,2 D) 1,2,310表达式!x|a= =b等效于_。A) !(x|a)= =b) B) !(x|y)= =b C) !(x|(a= =b) ) D) (!x)|(a= =b)11设int x=-1;执行表达式+x|+x|+x后x的值是_。A) 3 B) 2 C)1D)012.设int x=1,y=1;表达式(!x|y-)的值是_。A) -l B) 0 C) l D) 213.设x,y,t均为int型变量,则执行语句:xy3; t=+x|+y; 后y的值为_。A) 1 B) 3 c) 4 D) 不定值
4、14.已有定义int x=3,y=4,z=5;则表达式!(x+y)+z-1 & y+z/2的值是_。A) 6 B) 2C)1D)015.以下选项中非法的表达式是_。A) 0=x100 B) i=j= =0 C) (char)(x100) D) x+1=x+116.设有定义:int a2,b3,c4;以下选项中值为0的表达式是_。A) a |(b+b) & (c-a) B) (a=k B) -k+ C) k%f D) k=f=m18.下面各组表达式运算结果均为真的是_。A) 0 & a= =0 0 | a= =lB) a | !a= =0 a & !a= =0C) ! (a | |b)= =!a
5、 | !b !(a&b)= =!a | !bD) a| a= =a a | !a !=019.下面程序段执行后的输出结果是_。 int x-l,y4,k; kx+=0 !(y- = 0); printf(d,d,d, k,x,y);A) 0,0,3 B) 0,l,2 C) 1,0,3 D) 1,l,220.下面程序段执行后的输出结果是_。 int a=1,b=2,m=0,n=0,k; k(nba)|(mab); printf(%d,%d,k,m);A) 0,0 B) 0,l C) 1,0 D) 1,l21.下面程序段执行后的输出结果是_。 int a,b,d=25; ad/10%9; b=a&
6、(-1); printf(%d,%d,a,b);A) 6,1 B) 2,l C) 6,0 D) 2,022.下面程序段执行后x的值为_。 int a14,b15,x; char c=A; x=(a&b) & (cB); printf(d , x);A) 0 B) 1 C) 14 D) 1523.下面程序段执行后的输出结果是_。 int a4,b5,c0,d; d!a!b | !c; printf(d,d);A) 0 B) l C) 非0的数 D) -l24.若w=l,x=2,y=3,z=4,则条件表达式wx?w:yz?y:z的值是_。A) 4 B) 3 C) 2 D) l25.若有int i=
7、5;j=4,k=6; float f; 执行语句f=(ij & ik)?i:(j100?x+20:x+10的值为_。 A) 110 B) 111 C)120 D) 12127.设int m1=5,m2=3;表达式m1m2?(m1=1)Lm2=-1)运算后,m1和m2的值分别是_。A) 1和3 B) 1和-1 C) 5和-1 D) 5和328.若整型变量a,b,c,d的值依次为1,2,3,4,则表达式ab?a:c=A & c=Z) ? (c+32) :c的值是_A) Z B) z A) A B) a31.下面程序段执行后的输出结果是 int a5,b4,c6,d; dab? (ac ?a:c):
8、(b); printf(d,d);A)6 B)5 C)4 D)不确定32.若变量c为char类型,能正确判断出c为小写字母的表达式是_。A) a=c=a) | (c=a) | (c=a) & (c=1)(x=200)(x=1)| (x=200)| (x=1)(x=200)(x=1)| (x=200)| (x=1) | (x=1) | (x=1) & (x=1) & (x=0)36.若x和y为整型数,以下表达式中不能正确表示数学关系x-y10的是_A) abs(x-y)-10& x-y10C) !(x-y)10 D) (x-y)*(x-y)10037.C语言对嵌套if语句的规定是else总是与_
9、配对。A) 之前最近的尚未配对的if B) 第一个ifC) 缩进位置相同的if D)最前面的if38.“if(表达式)”中的“表达式”_ 。A) 只能是逻辑表达式 D) 只能是关系表达式C) 只能是算术表达式 D) 以上三种都可以39.当把以下四个表达式用作if语句的表达式时,有一个选项与其他三个选项含义不同,这个选项是_。A) k2 B) k2= =1 C) (k2)!=0 D) !k2= =140.对于下面程序,_是正确的判断。#include void main()int x,y; scanf(%d%d,&x,&y); if(xy) x=y; y=x; else x+; y+; prin
10、tf(%d,%d,x,y);A)有语法错误,不能通过编译 B) 若输入3和4,则输出4和5C) 若输入4和3,则输出3和4B) 若输入4和3,则输出4和541.对于下面程序段,_是正确的判断, Int x0,y0,z0; if (x=y+z) printf(*); else printf(#);A) 有语法错误,不能通过编译 B)输出:*C) 可以编译,但不能通过连接,所以不能运行 D)输出:#42.设int x,a,b;下面_是错误的if语句A) if(a=b) x+; B) if(a=0 | +b0) +c; printf(d,d,d, a,b,c);A) 0,0,0 B) l,l,1C) 1,0,1 D) 0,l,144.若a=1,b=3,c=5,d=4,则执行下面程序段后x的值是_if (ab) if (cd) x=1;elseif(ac) if(bd) x=2; else x=3;else x=6;
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1