安徽省计算机二级c语言笔试试题及答案_第1页
安徽省计算机二级c语言笔试试题及答案_第2页
安徽省计算机二级c语言笔试试题及答案_第3页
安徽省计算机二级c语言笔试试题及答案_第4页
安徽省计算机二级c语言笔试试题及答案_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

安徽省计算机二级c语言笔试试题及答案

一、单项选择题(每题2分,共20分)1.在C语言中,合法的字符常量是()A.'\084'B.'\x43'C.'ab'D."\0"答案:B2.若有定义:inta=5;则表达式a+=a-=aa的值是()A.-40B.40C.-25D.25答案:A3.以下不能正确定义二维数组的选项是()A.inta[2][2]={{1},{2}};B.inta[][2]={1,2,3,4};C.inta[2][2]={{1},2,3};D.inta[2][2]={1,2,3,4};答案:C4.在C语言中,函数返回值的类型是由()决定的。A.return语句中的表达式类型B.调用该函数的主调函数类型C.定义函数时所指定的函数类型D.形参的数据类型答案:C5.以下叙述中正确的是()A.全局变量的作用域一定比局部变量的作用域大B.静态(static)类别变量的生存期贯穿于整个程序的运行期间C.函数的形参都属于全局变量D.未在定义语句中赋初值的auto变量和static变量的初值都是随机值答案:B6.若有以下程序段:intc1=1,c2=2,c3;c3=1.0/c2c1;则执行后,c3的值是()A.0B.0.5C.1D.2答案:A7.以下程序的输出结果是()include<stdio.h>intmain(){inta=1,b=2;if(a++&&b++)printf("%d%d",a,b);elseprintf("%d%d",a,b-1);return0;}A.12B.23C.22D.11答案:C8.以下能正确定义字符串的语句是()A.charstr[]={'\064'};B.charstr="kx43";C.charstr="";D.charstr[]="string";答案:D9.设有如下定义:structsk{inta;floatb;}data;intp;若要使p指向data中的a成员,正确的赋值语句是()A.p=&a;B.p=data.a;C.p=&data.a;D.p=data.a;答案:C10.以下程序的功能是()include<stdio.h>intmain(){FILEfp;charstr[]="Hello,world!";fp=fopen("test.txt","w");fputs(str,fp);fclose(fp);return0;}A.在屏幕上显示"Hello,world!"B.把"Hello,world!"存入test.txt文件中C.在打印机上打印出"Hello,world!"D.以上都不对答案:B二、多项选择题(每题2分,共20分)1.以下哪些是C语言中的基本数据类型()A.整型B.浮点型C.字符型D.结构体类型E.指针型答案:ABC2.关于C语言中的函数,以下说法正确的是()A.函数可以嵌套定义B.函数可以有返回值也可以没有返回值C.函数的参数可以是常量、变量或表达式D.函数调用可以作为一个函数的实参E.函数中的局部变量在函数调用结束后就被释放答案:BCDE3.在C语言中,以下哪些表达式的值为0()A.5%2B.0==1C.'a'-'a'D.3&&0E.NULL答案:BDE4.对于以下代码:inta[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};以下哪些表达式可以正确访问数组元素()A.a[0][0]B.(a[1]+2)C.((a+1)+2)D.(a)[3]E.a[2][3]答案:ABCDE5.以下关于C语言中指针的说法正确的是()A.指针变量可以存储任何类型的数据B.指针变量的值是地址C.可以通过指针变量来间接访问变量的值D.指针变量必须先初始化才能使用E.两个指针变量可以进行加法运算答案:BCD6.以下哪些是C语言中的逻辑运算符()A.&B.&&C.||D.!E.^答案:BCD7.在C语言中,以下关于文件操作的说法正确的是()A.fopen函数用于打开文件B.fclose函数用于关闭文件C.fgets函数用于从文件中读取字符串D.fputs函数用于向文件中写入字符串E.fseek函数用于移动文件指针答案:ABCDE8.以下哪些是C语言中合法的标识符()A._abcB.123abcC.abc123D.a-bE.abc答案:AC9.对于以下结构体定义:structstudent{intnum;charname[20];floatscore;};以下哪些操作是合法的()A.structstudentstu;B.structstudentp;p=&stu;p->num=100;C.structstudentarr[10];arr[0].num=10;D.structstudentp=(structstudent)malloc(sizeof(structstudent));E.structstudentstu;stu->num=10;答案:ABCD10.在C语言中,以下关于预处理命令的说法正确的是()A.include命令用于包含头文件B.define命令用于定义宏C.预处理命令在编译之前执行D.可以用undef命令取消已定义的宏E.预处理命令以分号结尾答案:ABCD三、判断题(每题2分,共20分)1.在C语言中,所有变量都必须在使用之前定义。()答案:对2.数组名代表数组的首地址,它是一个常量指针。()答案:对3.函数的形参不可以是数组类型。()答案:错4.一个C程序中可以有多个main函数。()答案:错5.在C语言中,字符型数据在内存中以ASCII码形式存储。()答案:对6.指针变量和它所指向的变量具有相同的类型。()答案:错7.逻辑运算符&&和||具有短路特性。()答案:对8.结构体变量不能作为函数的参数。()答案:错9.在C语言中,全局变量在任何地方都可以直接访问。()答案:错10.可以用fread函数从文本文件中读取数据。()答案:错四、简答题(每题5分,共20分)1.简述C语言中局部变量和全局变量的区别。答案:局部变量在函数内部定义,作用域仅限于定义它的函数或代码块,生存期随函数调用开始和结束。全局变量在函数外部定义,作用域从定义点开始到整个程序结束,生存期贯穿整个程序运行期间。2.写出C语言中打开文件的函数fopen的常用模式及含义。答案:"r":只读模式,文件必须存在;"w":只写模式,若文件存在则清空,不存在则创建;"a":追加模式,若文件存在则在末尾追加,不存在则创建。3.简述C语言中结构体的用途。答案:结构体用于将不同类型的数据组合在一起,方便表示复杂的数据结构,如表示学生信息(学号、姓名、成绩等不同类型数据)。4.解释C语言中指针的概念。答案:指针是一种变量,它存储的是另一个变量的地址,可以通过指针间接访问它所指向的变量。五、讨论题(每题5分,共20分)1.讨论在C语言中如何避免数组越界访问。答案:在访问数组元素时,确保索引值在有效范围内,即0到数组大小减1之间。可以通过定义常量表示数组大小,在访问时进行边界检查。2.如何提高C语言程序的可读性?

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论