c的面试题及答案.doc
c的面试题及答案
一、单项选择题(每题2分,共10题)
1.在C语言中,以下哪个是合法的变量名?
A.1abc
B._abc
C.abc
D.$abc
答案:B
2.C语言中,int类型变量占用的字节数通常是多少?
A.1
B.2
C.4
D.8
答案:C
3.以下哪个不是C语言中的基本数据类型?
A.char
B.string
C.int
D.float
答案:B
4.C语言中,用于输入的函数是?
A.printf
B.scanf
C.getchar
D.putchar
答案:B
5.在C语言中,数组的下标是从?
A.0
B.1
C.-1
D.任意值
答案:A
6.以下C语言代码片段的输出结果是:
inta=5;
printf(%d,a++);
A.5
B.6
C.不确定
D.编译错误
答案:A
7.C语言中,函数返回值类型如果是int,函数体中没有return语句,函数返回值是?
A.0
B.1
C.不确定
D.-1
答案:A
8.以下哪个操作符用于取地址?
A.
B.
C.
D.@
答案:B
9.C语言中,用于跳出本次循环的语句是?
A.break
B.continue
C.return
D.goto
答案:B
10.以下哪种数据结构不是C语言内置的?
A.链表
B.数组
C.结构体
D.枚举
答案:A
二、多项选择题(每题2分,共10题)
1.以下哪些是C语言中的循环语句?
A.for
B.while
C.do-while
D.loop
答案:ABC
2.C语言中,以下哪些可以用于函数间传递数据?
A.全局变量
B.函数参数
C.局部变量
D.静态变量
答案:AB
3.以下哪些是C语言中的逻辑运算符?
A.
B.||
C.!
D.
答案:ABC
4.在C语言中,以下关于结构体的说法正确的是?
A.可以包含不同类型的成员
B.成员可以是函数指针
C.结构体变量在内存中是连续存储的
D.结构体不能嵌套
答案:ABC
5.以下哪些是C语言中的存储类别?
A.auto
B.static
C.extern
D.register
答案:ABCD
6.以下哪些操作可能导致C语言中的内存泄漏?
A.动态分配内存后不释放
B.忘记关闭文件
C.函数中局部指针变量未初始化就使用
D.数组越界
答案:A
7.C语言中,以下关于指针的说法正确的是?
A.指针可以指向函数
B.指针可以进行算术运算
C.空指针可以被解引用
D.指针变量占用的内存大小与所指对象类型有关
答案:AB
8.以下哪些是C语言中处理字符串的函数?
A.strlen
B.strcpy
C.strcat
D.strcmp
答案:ABCD
9.在C语言中,以下关于函数重载的说法正确的是?
A.C语言支持函数重载
B.函数名相同但参数类型不同可以视为重载
C.函数名相同且返回值类型不同可以视为重载
D.C语言不支持函数重载
答案:D
10.以下哪些情况会导致C语言中的编译错误?
A.语法错误
B.未定义的变量使用
C.头文件缺失
D.函数调用参数个数不匹配
答案:ABCD
三、判断题(每题2分,共10题)
1.在C语言中,变量必须先定义后使用。()
答案:对
2.C语言中的字符常量是用单引号括起来的单个字符。()
答案:对
3.函数内部定义的静态变量在每次函数调用时都会重新初始化。()
答案:错
4.C语言中的数组名是一个常量指针。()
答案:对
5.在C语言中,使用goto语句会使程序结构混乱,应尽量避免使用。()
答案:对
6.C语言中,两个浮点数可以直接用==进行精确比较。()
答案:错
7.所有的C语言函数都可以被其他函数调用。()
答案:错
8.C语言中,结构体和联合体在内存中的存储方式相同。()
答案:错
9.只要在程序中定义了足够的变量,就不会出现内存不足的情况。()
答案:错
10.在C语言中,函数可以嵌套定义。()
答案:错
四