printf(\}
13.分析以下程序的输出结果。6
main()
{ int a=5,b=4,c=6,d;
printf(\} 三、按要求写结果
1、计算下面表达式的值。设a=1,b=2,c=3。 (1)a = a!=b?b:c 3 (2)a>b?b+1:c+1 4 (3)(a=4) ? a--:b-- 1
2、写出满足下面条件的关系或逻辑表达式。
(1)a在区间(3,10)内。A>3&&a<10 (2)x是3的倍数。X%3=0
(3)x和y的和大于100且x大于45。X+Y>100&&x>45 (4)a等于c或b不等于0 a=c||b!=0 (5)a是小写字母a>=?c?&&a<=?z?
3、计算下面逻辑表达式的值。设a=0,b=1,c=2,d=4。
(1)a>=b (2)c-b==a (3)c!=d-b (4)b>a && c>b (5)a && d-c (6)!a && b>c (7)(b>a) || cd (10)(a||b) && cd
第三
一、选择题
1.下列运算符中优先级最高的是 B 。
A)> B) + C) && D)!=
2.以下关于运算符优先级的描述中,正确的是 A 。
A)!(逻辑非)>算术运算>关系运算>&&(逻辑与)>||(逻辑或)>赋值运算 B)&&(逻辑与)>算术运算>关系运算>赋值运算
C)关系运算>算术运算>&&(逻辑与)>||(逻辑或)>赋值运算 D)赋值运算>算术运算>关系运算>&&(逻辑与)>||(逻辑或) 3.逻辑运算符的运算对象的数据类型 D 。
A)只能是0或1 B)只能是.T.或.F. C)只能是整型或字符型 D)任何类型的数据
4.能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是 B 。
A)(x<=-10)||(x>=-5)&&(x<=0)||(x>=100) B)(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100) C)(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100) D)(x<=-10)||(x>=-5)&&(x<=0)||(x>=100) 5.以下程序的运行结果是 B 。 main( )
5
{ int c,x,y;
x=1; y=1; c=0; c=x++||y++; printf(“\\n%d%d%d\\n”,x,y,c); }
A)110 B)211 C)011 D)001 6.以下程序的运行结果是 A 。 main( )
{ int c,x,y;
x=0; y=0; c=0; c=x++&&y++; printf(“\\n%d%d%d\\n”,x,y,c); }
A)100 B)211 C)011 D)001 7.判断字符型变量ch为大写字母的表达式是C 。
A)?A?<=ch<=?Z? B)(ch>=?A?)&(ch<=?Z?) C)(ch>=?A?)&&(ch<=?Z?) D)(ch>=?A?)AND(ch<=?Z?) 8.判断字符型变量ch为小写字母的表达式是 D 。
A)?a?<=ch<=?z? B)(ch>=a)&&(ch<=z) C)(ch>=?a?)||(ch<=?z?) D)(ch>=?a?)&&(ch<=?z?) 9.以下if语句书写正确的是 B 。
A)if(x=0;) B)if(x>0)
printf(”%f”,x); {x=x+1; printf(”%f”,x);} else printf(”%f”,-x); else printf(”%f”,-x);
C)if(x>0); D)if(x>0)
{x=x+1; printf(”%f”,x);} {x=x+1; printf(”%f”,x) } else printf(”%f”,-x); else printf(”%f”,-x); 10.分析以下程序: main( )
{ int x=5,a=0,b=0;
if(x=a+b) printf(“** **\\n”); else printf(“## ##\\n”);} 以上程序 D 。
A)有语法错,不能通过编译 B)通过编译,但不能连接 C)输出** ** D)输出## ##
11.两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是 A 。 main( ) { int x;
scanf(“%d”,&x);
if(x++>5) printf(“%d”,x); else printf(“%d\\n”,x--); }
A)7和5 B)6和3 C)7和4 D)6和4 12.写出下面程序的执行结果 D 。 main( )
{int x,y=1;
6
if(y!=0) x=5; printf(“%d\\t”,x); if(y= =0) x=3; else x=5;
printf(“%d\\t\\n”,x); }
A)1 3 B)1 5 C)5 3 D)5 5
13.写出下面程序的执行结果 A 。 main()
{int x=1,y=1,z=0; if(z<0)
if(y>0) x=3; else x=5;
printf(\if(z=y<0) x=3; else if(y= =0 ) x=5; else x=7;
printf(\printf(\}
A)1 7 0 B)3 7 0 C)5 5 0 D)1 5 1 14.假定所有变量均已正确说明,下列程序段运行后x的值是 B 。 a=b=c=0;x=35; if(!a) x=-1; else if(b); if(c) x=3; else x=4;
A)34 B)4 C)35 D)3 16.若有以下函数关系 x<0 → y=2x x>0 → y=x x=0 → y=x+1
下面程序段能正确表示以上关系的是 C 。
A)y=2*x; B)y=2*x; if(x!=0) if(x<=0)
if(x>0)y=x; if(x= =0) y=x+1; else y=x+1; else y=x; C)if(x>=0) (D)y=x+1;
if(x>0) y=x; if(x<=0)
else y=x+1; if(x<0) y=2*x; else y=2*x; else y=x;
17.若有以下变量定义: float x; int a,b;
则正确的switch语句是 D 。
7
A)switch(x)
{ case 1.0:printf(\case 2.0:printf(\}
B)switch(x)
{ case 1,2:printf(\case 3:printf(\}
C)switch(a+b)
{ case 1:printf(\case 2*a:printf(\}
D)switch(a+b)
{ case 1:printf(\
case 1+2:printf(\}
18. 以下关于运算符优先顺序的描述正确的是 C 。
A)关系运算符<算术运算符<赋值运算符<逻辑运算符 B)逻辑运算符<关系运算符<算术运算符<赋值运算符 C)赋值运算符<逻辑运算符<关系运算符<算术运算符 D)算术运算符<关系运算符<赋值运算符<逻辑运算符
19. 能正确表示a>=10或a<=0的关系表达式是 D 。 A)a>=10 or a<=0 B)a>=10 | a<=0 C)a>=10 && a<=0 D)a>=10 | | a<=0 20. 以下不正确的if 语句形式是 C 。 A)if ( x > y && x != y ) ; B)if ( x = = y ) x + = y ;
C)if ( x != y ) scanf ( “%d”, &x) else scanf ( “%d”, &y); D)if ( x < y ) { x++; y++;}
21. 当 a = 1, b = 3 , c = 5, d = 4 时, 执行完下面程序段后 x 的值为 B 。 if ( a < b )
if ( c < d ) x = 1 ; else if ( a < c )
if ( b < d ) x =2 ; else x = 3 ; else x = 6 ; else x = 7 ;
A)1 B)2 C)3 D)6 22. 以下if语句中语法错误的是 C 。
A)if (a>b)printf(“%f”,a); B)if(a>b)printf(“%f”,a);
else printf(“%f”,b);
C)if(a>b)printf(“%f”,a) D)if(a>b)printf(“%f”,b); else printf(“%f”,b); else printf(“%f”,a); 23. 能表示整数x符合下面两个条件的语句是 A 。
(1)“能被4整除,但不能被100整除”.(2)能被4整除,又能被400整除.
A)(x%4==0&&x0!=0)||x@0==0 B)(x%4==0||x0!=0)&&x@0==0 C)(x%4==0&&x@0!=0)||x0==0 D)(x0==0||x%4!=0)&&x@0==0
8
相关推荐: