浙江省计算机二级考试c真题及答案_第1页
浙江省计算机二级考试c真题及答案_第2页
浙江省计算机二级考试c真题及答案_第3页
浙江省计算机二级考试c真题及答案_第4页
浙江省计算机二级考试c真题及答案_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

浙江省计算机二级考试c真题及答案

一、单项选择题(每题2分,共10题)1.以下关于C语言的叙述中正确的是()A.C语言中的注释只能出现在程序的开始位置和语句的后面B.C语言书写格式严格,要求一行内只能写一个语句C.C语言程序中的一个语句可以写在多行上D.用C语言编写的程序只能放在一个程序文件中答案:C2.若有定义:inta=7;floatx=2.5,y=4.7;则表达式x+a%3(int)(x+y)%2/4的值是()A.2.500000B.2.750000C.3.500000D.0.000000答案:A3.以下能正确定义一维数组的选项是()A.inta[5]={0,1,2,3,4,5};B.chara[]={0,1,2,3,4,5};C.chara={'A','B','C'};D.inta[5]="0123";答案:B4.以下函数调用语句中实参的个数是()func((exp1,exp2),(exp3,exp4,exp5));A.1B.2C.3D.5答案:B5.若有定义和语句:inta=4,b=3,p,q,w;p=&a;q=&b;w=q;q=NULL;则以下选项中错误的语句是()A.q=0;B.w=p;C.p=a;D.p=w;答案:A6.以下程序的输出结果是()include<stdio.h>intmain(){inti=0,s=0;do{if(i%2){i++;continue;}i++;s+=i;}while(i<7);printf("%d\n",s);return0;}A.16B.12C.28D.21答案:A7.以下叙述中错误的是()A.C程序中的include和define行均不是C语句B.除逗号运算符外,赋值运算符的优先级最低C.C程序中,j++;是赋值语句D.C程序中,+、-、、/、%号都是算术运算符,可用于整型和实型数的运算答案:D8.以下程序的输出结果是()include<stdio.h>voidfun(inta,intn){inti,j,t;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(a[i]<a[j]){t=a[i];a[i]=a[j];a[j]=t;}}intmain(){intc[10]={1,2,3,4,5,6,7,8,9,10},i;fun(c,5);for(i=0;i<10;i++)printf("%d",c[i]);return0;}A.12345678910B.10987654321C.54321678910D.12345109876答案:C9.以下关于指针的叙述正确的是()A.指针就是地址,地址就是指针B.一个指针变量只能指向同一类型的变量C.指针变量的值就是它所指向变量的地址,因此指针变量的类型与它所指向变量的类型无关D.指针变量可以由整数赋,不能用浮点数赋答案:B10.以下程序的输出结果是()include<stdio.h>intmain(){charch1='A',ch2='a';printf("%c\n",(ch1,ch2));return0;}A.AB.aC.65D.97答案:B二、多项选择题(每题2分,共10题)1.以下属于C语言基本数据类型的有()A.intB.floatC.doubleD.char答案:ABCD2.下列关于数组的描述正确的有()A.数组在内存中是连续存储的B.数组名代表数组的首地址C.可以对数组整体进行赋值操作D.数组下标的范围是从0到数组长度减1答案:ABD3.以下关于函数的说法正确的有()A.函数可以嵌套定义B.函数可以嵌套调用C.函数定义时形参可以不指定类型D.函数调用时实参和形参的类型要匹配答案:BD4.以下属于C语言中合法的常量有()A.123B.'a'C.1.23e2D."abc"答案:ABCD5.下列关于指针的操作正确的有()A.可以将一个指针赋值给另一个同类型的指针B.指针可以进行加、减整数的运算C.可以对指针进行比较运算D.可以将整数直接赋值给指针变量答案:ABC6.以下控制语句中,用于循环结构的有()A.for语句B.while语句C.do-while语句D.switch语句答案:ABC7.以下关于结构体的说法正确的有()A.结构体是一种用户自定义的数据类型B.结构体成员可以是不同的数据类型C.可以对结构体变量进行整体赋值D.结构体变量的成员可以通过“.”运算符访问答案:ABCD8.以下属于文件操作函数的有()A.fopenB.fcloseC.freadD.fwrite答案:ABCD9.以下关于C语言标识符的说法正确的有()A.标识符由字母、数字和下划线组成B.标识符的第一个字符必须是字母或下划线C.关键字不能作为标识符D.标识符区分大小写答案:ABCD10.以下关于预处理命令的说法正确的有()A.include用于包含头文件B.define可以定义常量和宏C.预处理命令在编译之前执行D.预处理命令必须以“”开头答案:ABCD三、判断题(每题2分,共10题)1.C语言中,变量必须先定义后使用。()答案:对2.在C语言中,数组名作为函数参数时,传递的是数组的首地址。()答案:对3.一个C语言程序可以有多个main函数。()答案:错4.指针变量可以指向任何类型的变量。()答案:错5.C语言中,switch语句的每个case后面必须要有break语句。()答案:错6.可以对结构体数组进行初始化。()答案:对7.用fopen函数打开文件时,如果文件不存在则会自动创建。()答案:错8.在C语言中,逻辑值“真”用1表示,“假”用0表示。()答案:对9.函数定义中形参的作用域是整个函数体。()答案:对10.C语言中,字符串常量以'\0'作为结束标志。()答案:对四、简答题(每题5分,共4题)1.简述C语言中变量存储类型有哪些?答案:C语言变量存储类型有auto(自动)、register(寄存器)、static(静态)、extern(外部)。auto为默认存储类型;register建议存寄存器;static修饰变量有静态生存期;extern用于声明外部变量。2.简述数组和指针的关系。答案:数组名本质是指向数组首元素的指针常量。通过指针可访问数组元素,指针运算可遍历数组。指针可指向数组,可进行指针与数组下标的等价操作,二者在访问内存数据上紧密相关。3.简述函数调用过程中实参和形参的传递方式。答案:C语言中函数实参向形参传递主要是值传递。实参将值复制给形参,形参在函数内的改变不会影响实参原值。若实参为指针,传递的是指针值(地址),可通过指针间接修改实参指向的数据。4.简述文件操作的基本步骤。答案:文件操作基本步骤:首先用fopen函数以指定模式打开文件;接着用文件读写函数如fread、fwrite等进行数据读写;操作完成后,用fclose函数关闭文件,释放相关资源,防止数据丢失和错误。五、讨论题(每题5分,共4题)1.讨论在C语言中如何提高程序的运行效率。答案:可优化算法,选用高效算法减少运算量;合理使用数据类型,如用合适整型减少内存占用;利用指针提高内存访问效率;减少函数调用开销,内联小函数;避免不必要的循环和重复计算,优化代码逻辑结构。2.讨论结构体和共用体的区别与应用场景。答案:区别:结构体各成员都有独立内存空间,同时存在;共用体所有成员共享同一块内存空间,同一时刻只有一个成员有效。应用场景:结构体用于存储多种类型相关数据;共用体用于节省内存,如不同时刻使用不同类型数据的场景。3.讨论C语言中预处理命令的作用及重要性。答案:预处理命令作用是在编译前对源程序进行处理。如include包含头文件,引入函数声明等;de

温馨提示

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

评论

0/150

提交评论