- 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语言笔试题库及答案
一、选择题(共20题)
以下关于C语言标识符的说法,正确的是()
A.标识符可以包含空格B.标识符必须以字母或下划线开头
C.标识符区分大小写,如a和A是同一个标识符D.标识符长度无限制
答案:B
解析:C语言标识符规则:由字母、数字、下划线组成,必须以字母或下划线开头,区分大小写,标准C规定标识符长度至少前31个字符有效,故选B。
若有定义:inta=10,b=20;则执行a+=b;后,a的值为()
A.10B.20C.30D.40
答案:C
解析:a+=b等价于a=a+b,即10+20=30,故选C。
以下循环语句中,循环体执行次数为5次的是()
A.for(inti=0;i5;i++)B.for(inti=1;i=5;i++)
C.inti=0;while(i5){i++;}D.以上都是
答案:D
解析:A选项i从0到4,共5次;B选项i从1到5,共5次;C选项i从0开始,每次循环i自增,直到i=5时退出,共5次,故选D。
以下关于指针的说法,错误的是()
A.指针变量存储的是变量的地址B.int*p;定义了一个指向整型变量的指针
C.指针变量可以直接赋值整数,如int*p=10;D.*p表示指针p指向的变量的值
答案:C
解析:指针变量必须存储有效内存地址,不能直接赋值整数(除非是NULL),直接赋值10会导致野指针,故选C。
若有数组定义:intarr[5]={1,2,3};则以下说法正确的是()
A.arr[3]的值为0B.arr[3]的值未定义
C.数组长度为3D.编译报错
答案:A
解析:数组初始化时,未赋值的元素默认初始化为0,arr[5]定义了5个元素,arr[0]=1、arr[1]=2、arr[2]=3、arr[3]=0、arr[4]=0,故选A。
以下函数定义中,语法正确的是()
A.intfun(inta,b){returna+b;}B.fun(inta,intb){returna+b;}
C.intfun(inta,intb){returna+b;}D.intfun(a,b)inta,b;{returna+b;}
答案:C
解析:函数定义需明确返回值类型,参数需分别指定类型,A选项b未指定类型,B选项无返回值类型,D是旧版KR语法(二级考试不考),故选C。
若有定义:structStudent{charname[20];intage;};则以下声明正确的是()
A.structStudents={Zhang,20};B.Students={Zhang,20};
C.structs={Zhang,20};D.structStudents={Zhang,20};
答案:A
解析:结构体变量声明需加struct关键字(除非typedef重定义),age是整型,不能赋值字符串,故选A。
以下关于文件操作的说法,正确的是()
A.打开文件需使用fopen函数,关闭文件需使用fclose函数
B.fscanf函数用于向文件写入数据C.fputs函数用于从文件读取字符串
D.文件操作无需判断打开是否成功
答案:A
解析:fscanf用于读取文件数据,fputs用于写入字符串,文件操作必须判断打开是否成功(避免文件不存在等错误),故选A。
若有定义:inta[3][4];则以下表示数组元素a[1][2]的地址的是()
A.a[1]+2B.*(a+1)+2C.a[1][2]D.以上都是
答案:D
解析:二维数组中,a[1]是第二行的首地址,a[1]+2等价于*(a+1)+2,均指向a[1][2],a[1][2]直接取地址,故选D。
以下程序的输出结果是()
#includestdio.h
intmain(){
intx=1,y=2;
if(x++y)
printf(%d,x);
else
printf(%d,y);
return0;
}
A.1B.2C.3D.4
答案:B
解析:x++是后置自增,先判断xy(12为假),再x自增
您可能关注的文档
- 二年级期末考试试卷(语文+数学)及答案.docx
- 二年级期末考试试题及答案.docx
- 二年级期末考试语文试题.docx
- 二年级数学第二单元测试题.docx
- 二年级数学第三单元(表内乘法)测试卷及答案.docx
- 二年级数学第三单元测试题.docx
- 二年级数学第四单元测试题.docx
- 二年级数学第五单元(表内除法)测试卷.docx
- 二年级数学第一单元测试题.docx
- 二年级数学方向与位置专项试题.docx
- 高中生研究生物组织培养技术繁殖濒危兰科植物的培养基优化课题报告教学研究课题报告.docx
- 初中历史地理综合考察与区域规划设计的课题报告教学研究课题报告.docx
- 小学六年级语文期末复习资料.docx
- 传统蒙学读物中的星座知识现代观星技术融合与教学设计课题报告教学研究课题报告.docx
- 高中课间操课程对学生体质健康促进的长期效果跟踪与评估教学研究课题报告.docx
- 教育大数据与人工智能融合的区域教育创新体系构建与决策支持策略研究教学研究课题报告.docx
- 急性肠炎的防治.pptx
- 七年级下册数学几何部分练习题.pdf
- 初中历史数字化实践教学远程指导策略及效果评价教学研究课题报告.docx
- 七年级下古诗文默写训练题(附答案).pdf
原创力文档


文档评论(0)