c语言设计考试题库及答案(精选题).docxVIP

  • 0
  • 0
  • 约6.53千字
  • 约 13页
  • 2026-01-30 发布于山东
  • 举报

c语言设计考试题库及答案(精选题).docx

c语言设计考试题库

第一部分单选题(50题)

1、逻辑表达式!5的结果是?()

A.0

B.1

C.5

D.真

【答案】:答案解析:5为真,!是逻辑非,真变假(0),故选A。

2、以下函数定义错误的是?()

A.voidfun(){}

B.voidfun(inta){}

C.intfun(){}

D.intfun(){return;}

【答案】:答案解析:D返回类型int(必须return表达式),return无表达式错误,A、B、C正确,故选D。

3、函数返回值通过______语句返回?()

A.printf

B.scanf

C.return

D.break

【答案】:答案解析:return语句用于函数返回值,printf输出,scanf输入,break跳出循环/switch,故选C。

4、以下函数参数传递方式中,能修改实参值的是?()

A.值传递

B.地址传递

C.都能

D.都不能

【答案】:答案解析:值传递修改的是形参(副本),不影响实参;地址传递通过指针修改实参值,故选B。

5、定义整型变量x、y并均赋值10的语句是?()

A.intx=y=10;

B.intx=10,y=10;

C.intx=10;y=10;

D.intx=10;inty=10;

【答案】:答案解析:同一行定义多个变量用逗号分隔,A不能连续赋值,C缺少int,D是两行定义,故选B。

6、若inta[5]={1,2,3,4,5},p=a;执行p+=2;后p的值是?()

A.2

B.3

C.4

D.5

【答案】:答案解析:p+=2使p指向a[2],*p=3,故选B。

7、若int*p=(int)malloc(sizeof(int));则p的值是?()

A.0

B.随机值

C.1

D.无定义

【答案】:答案解析:malloc分配的内存未初始化,值为随机值,故选B。

8、以下关于指针数组的定义正确的是?()

A.int*arr[5];

B.int(*arr)[5];

C.intarr[5];

D.intarr[];

【答案】:答案解析:A是指针数组(5个int指针),B是指向数组的指针,C是普通数组,D缺少长度,故选A。

9、以下关于指针的说法正确的是?()

A.指针可用于实现多返回值函数

B.指针可提高程序效率

C.指针可用于动态内存分配

D.以上都正确

【答案】:答案解析:指针的核心用途包括多返回值、高效访问、动态内存分配,故选D。

10、若inta=7,*p=a;执行++*p;后a的值是?()

A.7

B.8

C.a

D.无定义

【答案】:答案解析:++*p等价于++(*p),先解引用取a的值,再加1(a=8),故选B。

11、若intx=2;执行switch(x){case1:printf(a);case2:printf(b);case3:printf(c);}输出结果是?()

A.b

B.bc

C.abc

D.无输出

【答案】:答案解析:x=2匹配case2,无break,穿透到case3,输出bc,故选B。

12、若inta=10;执行if(a%2==0)printf(偶数);elseprintf(奇数);输出结果是?()

A.偶数

B.奇数

C.10

D.无输出

【答案】:答案解析:a=10%2=0,条件为真,输出偶数,故选A。

13、以下if-else语句的语法错误是?()

A.if(x0)printf(a);elseprintf(b);

B.if(x0){printf(a);}else{printf(b);}

C.if(x0)printf(a);else;printf(b);

D.if(x0){printf(a);}elseprintf(b);

【答案】:答案解析:else后不能直接加分号(否则else无作用),C中else;后printf独立执行,故选C。

14、若intx=4;执行if(x++4)printf(A);elseprintf(B);输出结果是?()

A.A

B.B

C.AB

D.无输出

【答案】:答案解析:x++是后置自增,条件判断时x=4,44为假,执行else(输出B),后x变为5,故选B。

15、若inta[3][3]={{1,2,3},{4,5,6},{7,8,9}};则a[1][2]的值是?()

A.5

B.6

C.8

D.9

【答案】:答案解析:a[1][2]是第二行第三列,值为6,故选B。

16、逻辑表达式!0的结果是?()

A.0

B.1

C.真

D.假

【答案】:答案解析:C语言中非0为真,!是逻辑非,!0(假)结果为1(真),故选B。

17、下列变量定义语法正确的是?(

文档评论(0)

1亿VIP精品文档

相关文档