最新C程序设计基础_复习题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

c语言规定,任何非0的数像1 -1等都被认为是真,而0被认为是假

1>1为假

试题一、单选题

1. 已知int k,m=1;执行语句k=-m++;后,k的值是_____。【知识点:难度:正确答案:A】

A.-1 B.0 C.1 D.-2

2. 已知定义int m; float k; 正确的语句是。【知识点:难度:正确答案:D】

A.(int k)%m B.int(k)%m C.int(k%m)D.(int)k%m

3. 当k的值不为0时,在下列选项中能够将k的值赋给变量m,n的是______。【知识点:难度:

正确答案:B】

A.m=k=n B.(m=k)&&(n=m)

C.(m=k)||(n=k)D.(n=m)&&(m=k)

4. 已知int x=5; 表达式6>x>1值是_____。【知识点:难度:正确答案:A】

A.0 B.1 C.5 D.表达式语法错

表达式6>x>1 ,先

判断6>x 为0,再

判断0>1,所以值

为0。

(6>x 为1 ,再判

断1>1,所以值为

0。)

5. 下列程序段执行后c值为_____。【知识点:难度:正确答案:D】

int k=7, c=0;

while(--k)

if (k%3) continue; else c++;

A.5 B.4 C.3 D.2

6. 已知字母a的ASCII码为十进制数97,且ch为字符型变量,则执行语句ch=‘a’+‘D’-‘A’;后,ch

中的值为_____。【知识点:难度:正确答案:C】

A.d B.c C.100 D.不确定

7. 设m,n已正确定义,执行语句{for(m=0, n=10; m

【知识点:难度:正确答案:C】

A.6,7 B.7,6

C.9,7 D.7,9

8. 已知char *t[] ={”How”, ”are”, ”you!”};则t是_______。【知识点:难度:正确答案:B】

A.指向char变量的指针B.指向字符指针的指针常量

C.指向”How”的指针变量D.指向’H’的指针

9. 假设scanf语句执行时输入ABCDE<回车>,能使puts(s)语句正确输出ABCDE字符串的程序

段是______。【知识点:难度:正确答案:C】

A.char s[5] = {"ABCDE"}; puts(s) B.char s[5] = {‘A’,’B’,’C’,’D’,’E’}; puts(s);

C.char *s; s = "ABCDE"; puts(s); D.char *s; scanf(“%s”,s); puts(s);

仅供学习与交流,如有侵权请联系网站删除谢谢1

10. 以下程序有错,错误原因是______。【知识点:难度:正确答案:D】

main()

{ int *p, i; char *q, ch;

p = &i;

q = &ch;

*p = 40;

*p = *q;

......

}

A. p和q的类型不一致,不能执行*p=*q;语句

B. *p中存放的是地址值,因此不能执行*p=40;语句

C. q没有指向具体的存储单元,所以*q没有实际意义

D. q虽然指向了具体的存储单元,但该单元中没有确定的值,所以执行*p=*q;没有意义,可能会影响后面语句的执行结果

11. 若有定义:int a=2, b=5, c=8; 则表达式c |= (~a && b) ^ !(a & b)的值为_____。【知识点:难

度:4正确答案:B】

A.14 B.8 C.1 D.0

12. 设int a=5, b=7, 表达式(++a == b--)? ++ a : --b 的值是_______。【知识点:难度:2正确

答案:C】

A.7 B.6 C.5 D.4

13. 设a=3, b=2, 那么表达式(a=b=7, b=a!=7) 的值是。【知识点:难度:2正确答

案:D】

A.1 B.2 C.7 D.0

逗号(,)也可以是运算符,逗号表达式最右边的子表达式的值即为逗号表达式的值。而b=a!=7的值为0

逗号运算符只取最右边的子表达式的值,但每个子表达式都要运行

14. 设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行语句(m=a>b)&&(n=c>d);后n的值是_____。【知

识点:难度:3正确答案:A】

A.2 B.1 C.0 D.3

&和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true 时,整个运算结果才为true,否则,只要有一方为false,则结果为false。

&&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式,

15. 下列程序段的输出结果是_____。【知识点:难度:3正确答案:B】

int k=2, s=0;

switch (k) {

case 2: s++; k++;

仅供学习与交流,如有侵权请联系网站删除谢谢2

case 1: s++;

case 3: s+=1;

switch(s){

case 2: s+=2; break;

default: k++; break;

}

default: s+=3;

}

printf("%d#%d#", s, k);

A.1#3# B.6#4# C.3#2# D.3#4#

16. 下列程序的输出结果是_____。【知识点:难度:2正确答案:C】

int f(int x)

{ static int k;

return ++k + x;

}

main( )

{ int k;

for(k=1; k<4; k++) printf("%d#", f(k) );

}

A.2#5# B.3#6# C.2#4#6# D.不确定

17. 下列程序的输出结果是_____。【知识点:难度:2正确答案:D】

main()

{ char x=040;

printf("%o\n",x<<1);

}

A.o B.40 C.1000000 D.100

18. 下列程序段的输出是__________。【知识点:难度:3正确答案:A】

main()

{ int x= -9, y=5, z=8;

if(x=y)if(x>0)z=0; else z+=1;

printf("z=%d\n", z);

}

A.z=0 B.z=1 C.z=8 D.z=9

esle子句与其之前最近的不完整if配对。

C语言中等号“=”为赋值运算符,不用于判断相等,判断相等应用“==”,因此仅供学习与交流,如有侵权请联系网站删除谢谢3

相关文档
最新文档