C语言基础练习题含答案 下载本文

B.逻辑与运算符<关系运算符<算术运算符<赋值运算符 C.赋值运算符<逻辑与运算符<关系运算符<算术运算符

D.算术运算符<关系运算符<赋值运算符<逻辑与运算符7.下列运算符中优先级最高的是(C)。

A.< B.&& C.+ D.!= 8.选择出合法的if语句(设int x,a,b,c;)(A)。 A.if(a=b) c++; B.if(a=b) c++; D.if(a=>b) c++;

9.能正确表示“当x的取值在[-58,-40]和[40,58]范围内为真,否则为假”的表达式是(C)。

A.(x>= -58) && (x<= -40) && (x>=40) && (x<=58) B.(x>= -58) || (x<= -40) || (x>=40) || (x<=58) C.(x>= -58) && (x<= -40) || (x>=40) && (x<=58) D.(x>= -58) | |(x<= -40) && (x>=40) || (x<=58)

10.判断char型变量s是否为小写字母的正确表达式是(C)。 A.’a’ <= s<=’z’B.(s>=’a’) & (s<=’z’)

C.(s>=’a’) && (s<=’z’) D.(’a’<=s) and (’z’>=s)

11.若希望当x的值为奇数时,表达式的值为“真”,x的值为偶数时,表达式的值为“假”。则以下不能满足要求的表达式是(C)。

A.x%2==1 B.!(x%2==0) C.!(x%2) D.x%2 12.已知x=45, y=’a’, z=0; 则表达式(x>=z && y<’z’ || !y)的值是(C)。 A.0 B.语法错

C.1 D.“假”13.指出下列程序段所表示的逻辑关系是(B)。 if(a

A .???≠≥=<-=d c b a

d c b a x 且且1010 B .???≥=<-=b a d c b a x 且1010

C .???≠<=<-=d c b a d c b a x 且且1010 D .???≠=<-=d c d c b a x 且1010

14.有一函数:?????>=<-=0 10 00

1x x x y ,以下程序段中不能根据x 值正确计算出y 值的是(C )。

A .if (x>0) y=1; else if (x==0) y=0; else y= -1; B .y=0; if (x>0) y=1; else if (x<0) y= -1; C .y=0; if (x>=0) if(x>0) y=1; else y= -1; D .if (x>=0) if (x>0) y=1; else y=0; else y= -1; 15

.执行以下语句后,y 的值为( A )。 int x,y,z; x=y=z=0;

++x || ++y && ++z; A.0 B.1 C.2 D.不确定值

16.已知int a=1,b=2,c=3; 以下语句执行后a,b,c的值是(B)。

if(a>b) c=a; a=b; b=c;

A.a=1, b=2, c=3 B.a=2, b=3, c=3 C.a=2, b=3, c=1 D.a=2, b=3, c=2 17.请阅读以下程序:该程序(C)。 #include ”stdio.h” main()

{ int x=-10, y=5, z=0; if (x=y+z) printf(”***\\n” ); else printf(”$$$\\n”); }

A.有语法错不能通过编译 B.可以通过编译但不能通过连接 C.输出*** D.输出$$$

18.以下程序的运行结果是(C)。 #include ”stdio.h” main() { int a=1;

if (a++>1) printf(”%d\\n”, a); else printf(”%d\\n”, a--); }

A.0 B.1 C.2