- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
3月计算机等级考试二级C语言笔试试题练习题及答案
一、选择题
1.以下选项中合法的标识符是()
A.1_abc
B._123
C.int
D.ab
答案:B。在C语言中,标识符由字母、数字和下划线组成,且第一个字符必须是字母或下划线。选项A以数字开头不合法;选项C“int”是C语言的关键字,不能作为标识符;选项D中包含非法字符“”。
2.若有定义:inta=10;则表达式a+=a=aa的值是()
A.180
B.180
C.0
D.100
答案:A。根据运算符优先级,先计算aa=100,然后a=100,即a=a100,此时a=90,最后a+=90,即a=a+(90),所以a=180。
3.以下关于数组的说法正确的是()
A.数组定义后,其大小可以动态改变
B.数组的下标可以是负数
C.数组名代表数组首元素的地址
D.数组元素的数据类型可以不同
答案:C。在C语言中,数组定义后大小是固定的,不能动态改变,选项A错误;数组下标从0开始,一般为非负整数,虽然语法上可以是负数,但会导致越界访问,选项B错误;数组元素的数据类型必须相同,选项D错误;数组名代表数组首元素的地址,选项C正确。
4.以下关于函数的说法错误的是()
A.函数可以没有返回值
B.函数可以有多个参数
C.函数定义可以嵌套
D.函数调用可以嵌套
答案:C。在C语言中,函数可以没有返回值,使用void类型,选项A正确;函数可以有多个参数,选项B正确;函数调用可以嵌套,选项D正确;但函数定义不能嵌套,选项C错误。
5.若有以下结构体定义:
```c
structstudent{
charname[20];
intage;
};
```
则以下定义结构体变量的语句正确的是()
A.structstudents;
B.students;
C.structs;
D.structstudent=s;
答案:A。定义结构体变量时,需要使用完整的结构体类型名“structstudent”,选项B缺少“struct”;选项C没有指定结构体类型;选项D语法错误。
二、填空题
1.若要将一个整数n转换为字符串,可以使用______函数。
答案:sprintf。sprintf函数可以将格式化的数据写入一个字符串中,例如sprintf(str,%d,n)可以将整数n转换为字符串存储在str中。
2.若有定义:inta[5]={1,2,3,4,5};则a[3]的值是______。
答案:4。数组下标从0开始,a[3]表示数组a的第4个元素,所以值为4。
3.若有函数声明:intadd(inta,intb);则该函数的返回值类型是______。
答案:int。函数声明中函数名前面的类型就是函数的返回值类型,这里是int。
4.若要打开一个文件进行读写操作,文件打开方式应该是______。
答案:r+或w+或a+。r+表示以读写方式打开一个已存在的文件;w+表示以读写方式创建一个新文件,如果文件已存在则先清空;a+表示以读写方式打开一个文件,在文件末尾追加数据。
5.若有定义:charch=A;则表达式ch+32的值是______。
答案:a。在ASCII码中,大写字母和小写字母的差值为32,A的ASCII码值加上32就得到a的ASCII码值。
三、判断题
1.在C语言中,变量必须先定义后使用。()
答案:正确。在C语言里,变量需要先进行定义,让编译器知道变量的类型和名称等信息,才能在后续代码中使用该变量。
2.数组名作为函数参数时,传递的是数组的首地址,属于值传递。()
答案:错误。数组名作为函数参数时,传递的是数组的首地址,属于地址传递,在函数中对数组元素的修改会影响到原数组。
3.可以使用break语句跳出多重循环。()
答案:错误。break语句只能跳出它所在的那一层循环,不能直接跳出多重循环。若要跳出多重循环,可以使用标志变量或者goto语句等方法。
4.空指针的值为0。()
答案:正确。在C语言中,空指针通常用NULL表示,而NULL在标准库中被定义为0,用于表示指针不指向任何有效的内存地址。
5.结构体变量的成员可以通过成员运算符“.”来访问。()
答案:正确。在C语言中,对于结构体变量,使用成员运算符“.”可以访问其成员,例如s.name可以访问结构体变量s的name成员。
四、解答题
1.编写一个函数,实现两个整数
专注于文案的个性定制,修改,润色等,本人已有15年相关工作经验,具有扎实的文案功底,可承接演讲稿、读后感、任务计划书、营销方案等多方面的 工作。欢迎大家咨询~
文档评论(0)