c语言基础知识试题及参考答案一套.docxVIP

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

c语言基础知识试题

第一部分单选题(50题)

1、以下函数声明正确的是?()

A.voidfun();

B.voidfun(inta);

C.intfun(int);

D.以上都正确

【答案】:答案解析:函数声明可省略形参名(只留类型),A、B、C均符合语法,故选D。

2、若inta[4]={10,20,30,40};则*(a+2)的值是?()

A.20

B.30

C.40

D.10

【答案】:答案解析:a+2是第三个元素地址,*(a+2)=a[2]=30,故选B。

3、以下关于指针数组和数组指针的说法正确的是?()

A.指针数组是数组,元素为指针

B.数组指针是指针,指向数组

C.int*arr[5]是指针数组,int(*arr)[5]是数组指针

D.以上都正确

【答案】:答案解析:A、B、C均准确区分了指针数组和数组指针,故选D。

4、以下哪个if语句的条件是“x是偶数且x大于10”?()

A.if(x%2==0x10)

B.if(x%2=0x10)

C.if(x%2==0||x10)

D.if(x%2=0||x10)

【答案】:答案解析:偶数判断用x%2==0,逻辑与用,B是赋值,C、D是逻辑或,故选A。

5、执行scanf(%d,%d,a,b);时,正确的输入格式是?()

A.23

B.2;3

C.2,3

D.2和3

【答案】:答案解析:scanf格式串中含逗号分隔符,输入需严格对应,故选C。

6、以下关于指针的说法错误的是?()

A.指针可指向变量、数组、函数

B.指针可进行算术运算(如++、--)

C.指针可指向自身

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

【答案】:答案解析:指针不能指向自身(类型不匹配),A、B、D说法正确,故选C。

7、若inta=5,p=a;执行p=8;后a的值是?()

A.5

B.8

C.a

D.无定义

【答案】:答案解析:*p=8通过指针修改指向变量a的值,a变为8,故选B。

8、若charc=A;执行c=c+32后,c的值是?()

A.a

B.B

C.65

D.97

【答案】:答案解析:大写字母ASCII码比对应小写字母小32,A(65)+32=a(97),故选A。

9、数组名作为函数参数时,传递的是?()

A.数组第一个元素的值

B.数组所有元素的值

C.数组第一个元素的地址

D.数组长度

【答案】:答案解析:数组名传参本质是首元素地址(指针传递),函数中可通过指针访问数组,故选C。

10、数组元素的下标从______开始?()

A.0

B.1

C.-1

D.任意

【答案】:答案解析:C语言数组下标从0开始,是固定规则,故选A。

11、若inta[3]={1,2,3},p=a;则(p+2)的值是?()

A.1

B.2

C.3

D.无定义

【答案】:答案解析:p+2指向a[2],解引用*(p+2)=a[2]=3,故选C。

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

A.野指针是指向无效地址的指针

B.空指针是野指针的一种

C.避免野指针需初始化并及时置空

D.以上都正确

【答案】:答案解析:A、B、C均是野指针的核心知识点,故选D。

13、指针与结构体的关系,以下说法正确的是?()

A.结构体指针通过-访问成员

B.结构体变量通过。访问成员

C.结构体指针可指向结构体变量

D.以上都正确

【答案】:答案解析:A、B、C均是结构体与指针的基本规则,故选D。

14、以下哪个是C语言中的赋值运算符?()

A.==

B.=

C.+=

D.!=

【答案】:答案解析:=是赋值运算符,==是等于判断,+=是复合赋值,!=是不等于判断,故选B。

15、若inta=5;执行if(a10);elsea=20;后a的值是?()

A.5

B.20

C.10

D.无定义

【答案】:答案解析:if后分号表示空语句,else执行a=20,故选B。

16、以下if语句中,条件表达式正确的是?()

A.if(x=5)printf(yes);

B.if(x==5)printf(yes);

C.if(x=5;)printf(yes);

D.if(x==5;)printf(yes);

【答案】:答案解析:if条件需是判断表达式(==),A是赋值,C、D多加分号,故选B。

17、以下定义函数指针正确的是?()

A.int(*fp)(int);

B.int*fp(int);

C.intfp(int);

D.int(fp)[];

【答案】:答案解析:A是指向int返回值、int参数的函数指针,B是返回int的函数,C是普通函数,D是指向数组的指针,故选A。

18、以下函数无返回值的是?()

A.intf

文档评论(0)

1亿VIP精品文档

相关文档