C语言笔试题库及答案(实战版).docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

C语言笔试题库及答案(实战版)

一、选择题(共10题)

以下关于C语言变量声明的说法,正确的是()

A.变量声明必须在函数开头

B.全局变量未初始化时默认值为0

C.register变量可以取地址

D.static局部变量的作用域是整个程序

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

#includestdio.h

intmain(){

inta=10;

intb=++a+a++;

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

return0;

}

A.1222B.1223C.1121D.1122

关于指针的说法,错误的是()

A.野指针可能导致程序崩溃

B.void*指针可以直接赋值给其他类型指针

C.指针变量存储的是内存地址

D.数组名本质是指向数组首元素的常量指针

以下代码的运行结果是()

#includestdio.h

voidfunc(intarr[]){

arr[0]=100;

}

intmain(){

inta[3]={1,2,3};

func(a);

printf(%d,a[0]);

return0;

}

A.1B.100C.随机值D.编译错误

关于static关键字的用法,错误的是()

A.静态全局变量只能在当前文件访问

B.静态局部变量生命周期与程序一致

C.静态函数可以被其他文件通过extern声明调用

D.静态变量未初始化时默认值为0

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

#includestdio.h

intmain(){

charstr[]=abc;

char*p=str;

printf(%lu%lu,sizeof(str),sizeof(p));

return0;

}

(注:32位系统下指针占4字节,64位占8字节)

A.34B.44C.38D.48

以下哪种情况会导致内存泄漏()

A.局部变量在函数结束后未释放

B.malloc分配的内存未通过free释放

C.全局变量占用的内存未手动释放

D.静态变量占用的内存未释放

关于C语言预处理指令,正确的是()

A.#define定义的宏在编译阶段替换

B.#include可以嵌套包含

C.#if的条件判断支持浮点型表达式

D.#undef用于取消函数的定义

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

#includestdio.h

intmain(){

inti=0;

for(;i5;i++){

if(i==2)

continue;

printf(%d,i);

}

return0;

}

A.0134B.01234C.01345D.编译错误

关于结构体的说法,正确的是()

A.结构体成员的数据类型必须相同

B.结构体变量可以直接用==比较

C.结构体指针访问成员使用-运算符

D.结构体定义时必须指定结构体名

二、填空题(共5题)

若有定义inta[5]={1,2,3};,则a[3]的值是______,数组的长度是______。

指针变量p指向int型变量a,则通过p修改a的值为10的语句是______。

写出计算1到100累加和的循环语句(使用for循环):______。

typedefstructStudent{charname[20];intage;}Stu;,则定义一个名为tom的学生变量的语句是______。

若要打开当前目录下的test.txt文件用于读取,fopen函数的正确调用是______。

三、编程题(共3题)

编写函数,判断一个整数是否为素数(素数是大于1的自然数,除了1和自身无其他因数)。

编写程序,将一个字符串逆序输出(例如输入abcde,输出edcba),要求不使用额外数组。

编写函数,实现两个有序数组的合并(假设两个数组均为升序排列),合并后的数组仍为升序,且不使用额外的数组空间(在第一个数组中完成合并,假设第一个数组有足够的空闲空间)。

答案及解析

一、选择题

答案:B

解析:A选项错误,C99标准后变量声明可在代码块任意位置;C选项错误,register变量存储在寄存器中,无法取地址;D选项错误,static局部变量作用域仍在当前函数,生命周期为程序全程。

答案:A

解析:

文档评论(0)

151****9429 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档