C语言考试题库及答案.docx

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

C语言考试题库及答案

一、选择题(每题5分,共10题)

下列关于C语言整型变量的说法,正确的是()

A.short类型变量的取值范围一定比int类型大

B.unsignedint类型的变量只能存储非负整数

C.long类型变量在所有编译器中都占8个字节

D.int类型变量的默认值是0

答案:B。解析:short类型占2字节,取值范围-32768~32767,int类型通常占4字节,取值范围-2147483648~2147483647,A错误;unsignedint无符号,只能存非负整数,B正确;long类型在32位编译器占4字节,64位占8字节,C错误;未初始化的int变量值是随机的,不是默认0,D错误。

以下关于C语言函数的说法,错误的是()

A.函数定义不能嵌套

B.一个C程序可以有多个函数,但只能有一个主函数(main函数)

C.函数声明必须放在函数调用之前

D.函数的返回值类型可以是void,表示没有返回值

答案:C。解析:函数定义不能嵌套,A正确;C程序有多个函数,但主函数只有一个,程序从main开始执行,B正确;若函数定义在调用之前,可不用声明,只有当函数定义在调用之后时,才需要先声明,C错误;void表示函数无返回值,D正确。

下列关于C语言数组的说法,正确的是()

A.数组的下标从1开始

B.数组在定义时可以不指定长度,只要初始化即可(一维数组)

C.数组名代表数组的第一个元素的值

D.可以直接用赋值语句将一个数组的值赋给另一个数组

答案:B。解析:数组下标从0开始,A错误;一维数组定义时,若初始化,可省略长度,编译器会根据初始化元素个数确定长度,B正确;数组名代表数组首元素的地址,不是值,C错误;C语言不能直接用赋值语句给数组整体赋值,需逐个元素赋值或用循环,D错误。

执行以下代码,输出结果是()

#includestdio.h

intmain(){

inta=5,b=3;

printf(%d,a++---b);

return0;

}

A.2

B.3

C.4

D.5

答案:B。解析:a++是后置自增,先使用a的值5,再让a变成6;--b是前置自减,先让b变成2,再使用b的值2。所以计算5-2=3,输出3,B正确。

以下关于C语言指针的说法,正确的是()

A.指针变量存储的是变量的值

B.可以用int类型变量给char类型指针变量赋值

C.指针变量的大小与它所指向的数据类型无关(同一编译器)

D.NULL指针指向的是内存地址为1的位置

答案:C。解析:指针变量存的是变量的地址,不是值,A错误;不同类型指针不能随意赋值,int变量不能直接给char指针赋值,需强制类型转换,B错误;同一编译器下,指针变量大小固定(如32位编译器占4字节,64位占8字节),与指向类型无关,C正确;NULL指针指向内存地址0,不是1,D错误。

下列关于C语言循环结构的说法,错误的是()

A.for循环的三个表达式都可以省略

B.while循环的循环体至少执行一次

C.do-while循环的循环体至少执行一次

D.循环结构中可以用break语句跳出当前循环

答案:B。解析:for循环三个表达式可省略(如for(;;)是无限循环),A正确;while循环先判断条件,条件为假时循环体一次都不执行,C正确(do-while先执行循环体再判断);break可跳出当前循环,D正确;B错误。

执行以下代码,输出结果是()

#includestdio.h

intmain(){

intx=10;

if(x15)

printf(A);

elseif(x8)

printf(B);

else

printf(C);

return0;

}

A.A

B.B

C.C

D.无输出

答案:B。解析:x=10,10不大于15,进入elseif判断,10大于8,执行printf(B),输出B,B正确。

以下关于C语言字符串的说法,正确的是()

A.字符串是用单引号括起来的字符序列

B.字符串的结束标志是\0

C.可以用sizeof运算符计算字符串的实际字符个数(不含结束标志)

D.charstr[5]=hello;

文档评论(0)

151****9429 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档