- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
C语言基础考试题库及答案
一、选择题(每题3分,共30分)
以下符合C语言变量命名规则的是()
A.1_numB.num1C._num1D.num!1
答案:C
解析:变量名只能由字母、数字、下划线组成,且不能以数字开头,A以数字开头,B含“”,D含“!”,均不符合规则。
若定义“inta=5,b=3;”,则表达式“a+=b*2”的值是()
A.11B.16C.8D.26
答案:A
解析:C语言中运算符优先级“”高于“+=”,先算b2=6,再算a=a+6=5+6=11。
以下循环语句中,循环体执行次数为5次的是()
A.for(inti=1;i=5;i++)B.for(inti=0;i5;i++)
C.inti=1;while(i5){i++;}D.inti=0;do{i++;}while(i=5);
答案:B
解析:A执行5次(i=1到5),B执行5次(i=0到4),C执行4次(i=1到4),D执行6次(i=0到5),题目问“执行次数为5次”,A和B均满足?补充:实际考试中通常明确边界,本题B更典型(从0开始的常见写法),故优先选B。
函数调用时,实参传递给形参的方式不包括()
A.值传递B.地址传递C.引用传递D.指针传递
答案:C
解析:C语言中无“引用传递”(引用是C++特性),实参传递只有值传递和地址传递(指针传递本质是地址传递)。
以下关于数组的说法错误的是()
A.数组名代表数组首元素的地址B.数组下标从0开始
C.数组在内存中占用连续存储空间D.可以直接用“=”给数组整体赋值
答案:D
解析:C语言不支持数组整体赋值,需通过循环逐个元素赋值,或用strcpy(字符数组)。
若定义“charstr[]=hello;”,则str数组的长度是()
A.5B.6C.不确定D.4
答案:B
解析:字符串末尾默认添加\0作为结束标志,hello含5个字符,加上\0,数组长度为6。
以下能正确定义指针变量的是()
A.intp;B.intp;C.*intp;D.intp;
答案:A
解析:指针变量定义格式为“数据类型*变量名”,B、C格式错误,D是普通整型变量。
以下程序的运行结果是()
#includestdio.h
intmain(){
intx=3;
if(x5)printf(A);
elseif(x3)printf(B);
elseprintf(C);
return0;
}
A.AB.BC.CD.无输出
答案:C
解析:x=3,不满足x5和x3,执行else分支,输出“C”。
以下函数的功能是()
intfun(inta,intb){
returnab?a:b;
}
A.求a和b的和B.求a和b的差C.求a和b中的较大值D.求a和b中的较小值
答案:C
解析:三元运算符“ab?a:b”表示“若ab则返回a,否则返回b”,即求较大值。
以下关于文件操作的说法正确的是()
A.打开文件后无需关闭B.fopen函数返回FILE类型指针
C.只能用“r”模式读取文件D.fscanf只能读取文本文件
答案:B
解析:A需关闭文件(避免内存泄漏),C还可“rb”读二进制文件,Dfscanf也可读二进制文件(但不常用),B正确。
二、填空题(每空2分,共20分)
若定义“inta=10,b;”,执行“b=a--;”后,a的值是______,b的值是______。
答案:9;10
解析:a--是后置自减,先赋值给b(b=10),再让a减1(a=9)。
用for循环求1到100的和,循环语句可写为“for(inti=1,sum=0;i=100;______)sum+=i;”。
答案:i++
解析:循环需让i从1递增到100,每次循环后i加1,故填i++。
函数定义“intadd(intx,inty){returnx+y;}”中,函数的返回值类型是______,形参有______个。
答案:int;2
解析:函数名前的in
文档评论(0)