




已阅读5页,还剩141页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2011年计算机等级二级c语言章节习题及答案(1)一、选择题(在下列各题的a)、b)、c)、d)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上。)2.1以下叙述中正确的是a)c语言比其他语言高级b)c语言可以不用编译就能被计算机识别执行c)c语言以接近英语国家的自然语言和数学语言作为语言的表达形式d)c语言出现的最晚,具有其他语言的一切优点正确答案: c2.2 以下叙述中正确的是a)构成c程序的基本单位是函数b)可以在一个函数中定义另一个函数c)main()函数必须放在其他函数之前d)所有被调用的函数一定要在调用之前进行定义正确答案: a2.3 以下说法正确的是a)c语言程序总是从第一个的函数开始执行b)在c语言程序中,要调用函数必须在main()函数中定义c)c语言程序总是从main()函数开始执行d)c语言程序中的main()函数必须放在程序的开始部分正确答案: c2.4 c语言规定,在一个源程序中,main函数的位置a)必须在最开始b)必须在系统调用的库函数的后面c)可以任意d)必须在最后正确答案: c2.5 以下叙述不正确的是a)一个c源程序可由一个或多个函数组成b)一个c源程序必须包含一个main函数c)c程序的基本组成单位是函数d)在c程序中,注释说明只能位于一条语句的后面正确答案: d2.6 下列叙述中正确的是a)c语言编译时不检查语法b)c语言的子程序有过程和函数两种c)c语言的函数可以嵌套定义d)c语言的函数可以嵌套调用正确答案: d2.7 以下叙述正确的是a)在c程序中,每行中只能写一条语句b)若a是实型变量,c程序中允许赋值a=10,因此实型变量中允许存放整型数c)在c程序中,无论是整数还是实数,都能被准确无误地表示d)在c程序中,%是只能用于整数运算的运算符正确答案: d2.8 以下说法错误的是a)一个算法应包含有限个步骤b)在计算机上实现的算法是用来处理数据对象的c)算法中指定的操作,不能通过已经实现的基本运算执行有限次后实现d)算法的目的是为了求解正确答案: c2.9 算法是指为解决某个特定问题而采取的确定且有限的步骤,下面不属于算法的五个特性的是a)有零个输入或多个输入b)高效性c)有穷性d)确定性正确答案: b2.10 下列关于c语言的说法不正确的是a)c语言既具有高级语言的一切功能,也具有低级语言的一些功能b)c语言中的每一条执行语句都必须用分号结束,分号不是c语言的一部分,是语句之间的分隔符号c)注释可以出现在程序中任意合适的地方d)命令行后面不能加分号,命令行不是c语言的语句正确答案: b2.11 以下说法错误的是a)高级语言都是用接近人们习惯的自然语言和数学语言作为语言的表达形式b)计算机只能处理由0和1的代码构成的二进制指令或数据c)c语言源程序经过c语言编译程序编译之后生成一个后缀为.exe的二进制文件d)每一种高级语言都有它对应的编译程序正确答案: c2.12 c语言中用于结构化程序设计的3种基本结构是a)顺序结构、选择结构、循环结构b)if,switch,breakc)for,while,do-whiled)if,for,continue正确答案: a二、填空题(请将每一个空的正确答案写在答题卡相应序号后。)2.13 用高级语言编写的程序称为【1】程序,它可以通过解释程序翻译一句执行一句的方式执行,也可以通过编译程序一次翻译产生目标程序,然后执行。正确答案: 源程序2.14 c语言程序的注释可以出现在程序中的任何地方,一个注释以【2】作为开始和结束。正确答案: /* */第3章 数据类型运算符与表达式一、选择题(在下列各题的a)、b)、c)、d)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上。)3.1 c语言中最简单的数据类型包括a)整型、实型、逻辑型b)整型、实型、字符型c)整型、字符型、逻辑型d)字符型、实型、逻辑型正确答案: b3.2 c语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符a)必须为字母b)必须为下划线c)必须为字母或下划线d)可以是字母,数字和下划线中任一字符正确答案: c3.3 下列可用于c语言用户标识符的一组是a)void, define, wordb)a3_b3, _123,carc)for, -abc, if cased)2a, do, sizeof正确答案: b3.4 下面四个选项中,均是不正确的8进制数或16进制数的选项是a)016 0x8f 018b)0abc 017 0xac)010 -0x11 0x16d)0a12 7ff -123正确答案: d3.5 下列数据中,不合法的c语言实型数据的是a)0.123b)123e3c)2.1e3.5d)789.0正确答案: c3.6 在16位c编译系统上,若定义long a;,则能给a赋40000的正确语句是a)a=20000+20000;b)a=4000*10;c)a=30000+10000;d)a=4000l*10l;正确答案: d3.7 若有说明语句:char c=72;则变量ca)包含1个字符b)包含2个字符c)包含3个字符d)说明不合法,c的值不确定正确答案: a3.8 有字符串如下,n407as1xabc,则字符串的长度为a)6b)7c)8d)9正确答案: d3.9 c语言中运算对象必须是整型的运算符是a)%=b)/c)=d)=正确答案: a3.10 若变量已正确定义并赋值,以下符合c语言语法的表达式是a)a:=b+1b)a=b=c+2c)int 18.5%3d)a=a+7=c+b正确答案: b3.11 若变量a,i已正确定义,且i已正确赋值,合法的语句是a)a= =1b)+i;c)a=a+=5;d)a=int(i);正确答案: b3.12 若有定义:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是a)2.500000b)2.750000c)3.500000d)0.000000正确答案: a3.13 若有运算符,sizeof,&=,则它们按优先级由高至低的正确排列次序是a)sizeof,&=,b)sizeof,&=c),sizeof,&=d),&=,sizeof正确答案: b3.14 以下不正确的叙述是a)在c程序中,逗号运算符的优先级最低b)在c程序中,aph和aph是两个不同的变量c)若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变d)当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值正确答案: d3.15 已知int i,a;执行语句i=(a=3,a+,- -a,a+4,a+5,+a);后,变量i的值为a)2b)3c)4d)5正确答案: c3.16 设变量a是int型,f是float型,i是double型,则表达式10+a+i*f值的数据类型为a)intb)floatc)doubled)不确定正确答案: c3.17 在c语言中,char型数据在内存中的存储形式是a)补码b)反码c)原码d)ascii码正确答案: d3.18 字符型数据在机器中是用ascii码表示的,字符5和7在机器中表示为a)10100011和 01110111b)01000101和01100011c)00110101和00110111d)01100101和01100111正确答案: c3.19 不能进行+和- -运算的数据类型为a)指针b)整型c)长整型d)常量正确答案: d3.20 设有int x=11;则表达式(x+*1/3)的值是a)3b)4c)11d)123.21 以下程序的输出结果是main() int a=21,b=11;printf(%dn,- -a+b,- -b+a);a)30b)31c)32d)33正确答案: a3.22 假设整型变量a,b,c的值均为5,则表达式a+b+c+的值为a)17b)16c)15d)14正确答案: c3.23 已知int a=6; 则执行a+=a-=a*a;语句后,a的值为a)36b)0c)-24d)-60正确答案: d3.24 设变量n为float类型,m为int类型,则以下能实现将n中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是a)n=(n*100+0.5)/100.0b)m=n*100+0.5,n=m/100.0c)n=n*100+0.5/100.0d)n=(n/100+0.5)*100.0正确答案: b3.25 sizeof(float)是a)一个双精度型表达式b)一个整型表达式c)一种函数调用d)一个不合法的表达式正确答案: b3.26 在c语言中,int,char和short三种类型数据在内存中所占用的字节数a)由用户自己定义b)均为2个字节c)是任意的d)由所用机器的机器字长决定正确答案: d3.27 以下变量x,y,z均为double类型且已正确赋值,不能正确表示数学式子xyz的c语言表达式是a)x/y*zb)x*(1/(y*z)c)x/y*1/zd)x/y/z正确答案: a3.28 下列关于复合语句和空语句的说法错误的是a)复合语句是由“”开头,由“”结尾的b)复合语句在语法上视为一条语句c)复合语句内,可以有执行语句,不可以有定义语句部分d)c程序中的所有语句都必须由一个分号作为结束正确答案: c3.29 下列关于字符串的说法中错误的是a)在c语言中,字符串是借助于字符型一维数组来存放的,并规定以字符0作为字符串结束标志b)0作为标志占用存储空间,计入串的实际长度c)在表示字符串常量的时候不需要人为在其末尾加入0d)在c语言中,字符串常量隐含处理成以0结尾正确答案: b正确答案: a二、填空题(请将每一个空的正确答案写在答题卡相应序号后。)3.30 以下程序的输出结果是【1】。int a=1234;printf (-n,a);正确答案: 12343.31 在计算机中,字符的比较是对它们的【2】进行比较。正确答案: ascii码3.32 在内存中,存储字符x要占用1个字节,存储字符串x要占用【3】个字节。正确答案: 23.33 在c语言中(以16位pc机为例),一个float型数据在内存中所占的字节数为4;一个double型数据在内存中所占的字节数为【4】。正确答案: 83.34 以下程序段的输出结果是【5】。main ()int a=2,b=3,c=4;a*=16+(b+)-(+c);printf(%d,a);正确答案: 283.35 以下程序段的输出结果是【6】 。int x=17,y=26;printf (%d,y/=(x%=6);正确答案: 53.36 下列y的值是 【7】 。int y; y=sizeof(2.25*4);正确答案: 83.37 以下程序的输出结果是 【8】 。main ()int i=010,j=10;pirntf (%d,%dn,i,j);正确答案: 8,103.38 已知字母a的ascii码为十进制数97,且设ch为字符型变量,则表达式ch=a+8-3的值为 【9】 。正确答案: f3.39 如下语句printf(%cn,b+40);在执行后的输出结果是 【10】 。正确答案: j3.40 定义int a=5,b=20;若执行语句printf(%dn,+a*- -b/5);后,输出的结果为 【11】 。正确答案: 9第4章 顺序程序设计一、选择题(在下列各题的a)、b)、c)、d)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上。)4.1 若变量已正确说明为float型,要通过语句scanf(%f%f%f,&a,&b,&c);给a赋予10.0,b赋予22.0,c赋予33.0,下列不正确的输入形式是a)102233b)10.0,22.0,33.0c)10.022.0 33.0d)10 2233正确答案: b4.2 现有以下程序段#includemain() int a,b,c;scanf(a=%*d%d,b=%d%*d,c=%d,&a,&b,&c);printf(a=%d,b=%d,c=%dn,a,b,c); 若输出的结果为a=20,b=30,c=40,则以下能够正确输入数据的是a)a=1020,b=2030,c=40b)20,30,40c)a=20,b=30,c=40d)a=1020,b=3020,c=40注: “”表示空格,表示回车正确答案: d4.3 x,y,z被定义为int型变量,若从键盘给x,y,z输入数据,正确的输入语句是a)input x、y、z;b)scanf(%d%d%d,&x,&y,&z);c)scanf(%d%d%d,x,y,z);d)read(%d%d%d,&x,&y,&z);正确答案: b4.4 已有定义int a=-2;和输出语句 printf(%8lx,a);以下正确的叙述是a)整型变量的输出形式只有%d一种b)%x是格式符的一种,它可以适用于任何一种类型的数据c)%x是格式符的一种,其变量的值按十六进制输出,但%8lx是错误的d)%8lx不是错误的格式符,其中数字8规定了输出字段的宽度正确答案: d4.5 下列程序段的输出结果是:int a=1234;float b=123.456;double c=12345.54321;printf(-,%2.1f,%2.1f,a,b,c);a)无输出b)12,123.5,12345.5c)1234,123.5,12345.5d)1234,123.4,1234.5正确答案: c4.6 执行下列程序时输入:123456789 输出结果是main() char s100; int c, i;scanf(%c,&c); scanf(%d,&i); scanf(%s,s);printf(%c,%d,%sn,c,i,s);a)123,456,789b)1,456,789c)1,23,456,789d)1,23,456正确答案: d4.7 若已定义:int a=25,b=14,c=19;以下三目运算符(?:)所构成语句的执行后a=25&b-y后,变量z的值为a)0b)1c)4d)5正确答案: b5.3 能正确表示逻辑关系:“a10或a0”的c语言表达式是a)a=10 or a=0|a=10 &a=10a=0正确答案: d5.4 若变量c为char类型,能正确判断出c为小写字母的表达式是a)a=c=a)|(c=z)c)(a=c)d)(c=a)&(c=z)正确答案: d5.5 设int x=1,y=1;表达式(!x|y- -)的值是a)0b)1c)2d)-1正确答案: b5.6 有如下程序段int a=14,b=15,x;char c=a;x=(a&b)&(cb)&(n=cd)后n的值是a)1b)2c)3d)4正确答案: b5.9 已知x,y,z均为整型变量,且值均为1,则执行语句+x|+y&+z;后,表达式x+y的值为a)1b)2c)3d)4正确答案: c5.10 表达式aa)|b)&c)12?x+10:x-12;printf(%dn,y);a)0b)22c)12d)10正确答案: a5.12 已知char ch=c;则以下表达式的值是ch=(ch=a & ch=z)?(ch+32):ch;a)ab)ac)zd)c正确答案: d5.13 若有条件表达式 (exp)?a+:b-,则以下表达式中能完全等价于表达式(exp)的是a)(exp=0)b)(exp!=0)c)(exp=1)d)(exp!=1)正确答案: b5.14 有以下程序main()int i=1,j=1,k=2;if(j+|k+)&i+)printf(%d,%d,%dn,i,j,k);执行后输出结果是a)1,1,2b)2,2,1c)2,2,2d)2,2,3正确答案: c5.15 请阅读以下程序:main() int a=5,b=0,c=0;if(a=b+c)printf(*n);else printf($n);以上程序a)有语法错不能通过编译b)可以通过编译但不能通过连接c)输出*d)输出$正确答案: d5.16 若执行下述程序时,若从键盘输入6和8时,结果为main()int a,b,s;scanf(%d%d,&a,&b);s=a;if(as=b;s*=s;printf(%d,s);a)36b)64c)48d)以上都不对正确答案: b5.17 有如下程序main()float x=2.0,y;if(x0.0)y=0.0;else if(x10.0)y=1.0/x;else y=1.0;printf(%fn,y);该程序的输出结果是a)0.000000b)0.250000c)0.500000d)1.000000正确答案: c5.18 以下4个选项中,不能看做一条语句的是a);b)a=5,b=2.5,c=3.6;c)if(a30?b:c;switch(d) case 30 : printf(%d,a);case 40 : printf(%d,b);case 50 : printf(%d,c);default : printf(#);则输出的结果是a)40,50,b)50,#c)40,#d)40,50,#正确答案: d5.21 现有如下程序段,此程序段编译有错误,则程序段的错误出在#includemain() int a=30,b=40,c=50,d;d=a30?b:c;switch(d) case a:printf(%d,a);case b:printf(%d,b);case c:printf(%d,c);default:printf(#);a)default:printf(#);这个语句b)d=a30?b:c;这个语句c)case a:printf(%d,a); case b:printf(%d,b); case c:printf(%d,c);这三个语句d)switch(d)这个语句正确答案: c二、填空题(请将每一个空的正确答案写在答题卡相应序号后。)5.22 设y是int型,请写出y为奇数的关系表达式 【1】 。正确答案: (y%2)=1 或 (y%2)!=05.23 设int a=5,b=6,表达式(+a= =b- -)?+a:-b的值是【2】 。正确答案: 75.24 将以下程序写成三目运算表达式是【3】 。if(ab)max=a;else max=b;正确答案: max=(ab)?a:b;5.25 以下程序输出的结果是【4】。main() int a=5,b=4,c=3,d;d=(abc);printf(%dn,d);正确答案: 05.26 若从键盘输入58,则以下程序输出的结果是 【5】 。main()int a;scanf(%d,&a);if(a50)printf(%d,a);if(a40)printf(%d,a);if(a30)printf(%d,a);正确答案: 5858585.27 阅读下面语句,则程序的执行结果是 【6】 。#include stdio.hmain() int a=-1,b=1,k;if(+a0)&!(b- -=0)printf(%d,%dn,a,b);else printf(%d,%dn,b,a);正确答案: 1,05.28 阅读下面程序,则在执行时候的输出为 【7】 。#include stdio.hmain()int x=1,y=2,z=0;if(x=2)z=x,x=y,y=z;printf(%d,%dn,x,y);正确答案: 2,25.29 以下程序的输出结果是【8】。main() int x=100, a=10, b=20, ok1=5, ok2=0;if(aelse if(ok2)x=10;else x=-1;printf(%dn, x);正确答案: -15.30 阅读下面的程序,当程序在执行时,如果输入的是a,则输出结果为 【9】 。#include stdio.hmain()char a;a=getchar();switch(a) case 65: printf(%c,a);case 66: printf(%c,b);default :printf(%sn,other);正确答案: abother第7章 数组一、选择题(在下列各题的a)、b)、c)、d)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上。)7.1 若有说明 int a34;则a数组元素的非法引用是a)a02*1b)a13c)a4-20d)a04正确答案:d7.2 在c语言中,引用数组元素时,其数组下标的数据类型允许是a)整型常量b)整型表达式c)整型常量或整型表达式d)任何类型的表达式正确答案:c7.3 执行下面的程序段后,变量k中的值为int k=3, s2;s0=k; k=s1*10;a)不定值b)33c)30d)10正确答案:a7.4 定义如下变量和数组:int k;int a33=9,8,7,6,5,4,3,2,1;则下面语句的输出结果是for(k=0;k3;k+)printf(%d,akk);a)7 5 3b)9 5 1c)9 6 3d)7 4 1正确答案:b7.5 下列程序执行后的输出结果是main() char arr24;strcpy(arr,you);strcpy(arr1,me);arr03=&;printf(%sn,arr);a)you&meb)youc)med)err正确答案:a7.6 设有数组定义: char array=china; 则数组 array所占的空间为a)4个字节b)5个字节c)6个字节d)7个字节正确答案:c7.7 以下不正确的定义语句是a)double x5=2.0,4.0,6.0,8.0,10.0;b)int y5=0,1,3,5,7,9;c)char c1=1,2,3,4,5;d)char c2=x10,xa,x8;正确答案:b7.8 若有说明:int a3=1,2,3,4,5,6,7;则a数组第一维的大小是a)2b)3c)4d)无确定值正确答案:b7.9 对以下说明语句的正确理解是int a10=6,7,8,9,10;a)将5个初值依次赋给a1至a5b)将5个初值依次赋给a0至a4c)将5个初值依次赋给a6至a10d)因为数组长度与初值的个数不相同,所以此语句不正确正确答案:b7.10 若有说明:int a4=0,0;则下面不正确的叙述是a)数组a的每个元素都可得到初值0b)二维数组a的第一维大小为1c)当初值的个数能被第二维的常量表达式的值除尽时,所得商数就是第一维的大小d)只有元素a00和a01可得到初值,其余元素均得不到确定的初值正确答案:d7.11 有以下程序main() char a= a, b, c,d, e, f, g,h,0;int i,j;i=sizeof(a);j=strlen(a);printf(%d,%db,i,j);程序运行后的输出结果是a)9,9b)8,9c)1,8d)9,8正确答案:d7.12 假定int类型变量占用两个字节,其有定义:int x10=0,2,4;,则数组x在内存中所占字节数是a)3b)6c)10d)20正确答案:d7.13 以下能对二维数组c进行正确的初始化的语句是a)int c3=3,3,4;b)int c3=3,3,4;c)int c32=3,3,4,5;d)int c3=3,3;正确答案:b7.14 在c语言中,一维数组的定义方法为类型说明符 数组名a)常量表达式b)整型常量c)整型变量d)整型常量或整型表达式正确答案:a7.15 若二维数组a有m列,则计算任一元素aij在数组中相对位置的公式为 (假设a00位于数组的第一个位置上)a)i*m+jb)j*m+ic)i*m+j-1d)i*m+j+1正确答案:a7.16 下面程序输出的结果是main() int i;int a33=1,2,3,4,5,6,7,8,9;for(i=0;i3;i+)printf(%d ,a2-ii);a)1 5 9b)7 5 3c)3 5 7d)5 9 1正确答案:b7.17 以下不能对二维数组a进行正确初始化的语句是a)int a23=0;b)int a3=1,2,0;c)int a23=1,2,3,4,5,6;d)int a3=1,2,3,4,5,6;正确答案:c7.18 阅读下面程序,则程序段的功能是#include stdio.hmain() int c=23,1,56,234,7,0,34,i,j,t;for(i=1;i=0 & tcj)cj+1=cj;j-;cj+1=t;for(i=0;i0) puts(a);else if(k0) puts(b);a)loveb)chinac)lovechinad)没有输出结果正确答案:a二、填空题(请将每一个空的正确答案写在答题卡相应序号后。)7.31 下面程序的功能是输出数组s中最大元素的下标,请填空。main() int k, p,s=1, -9, 7, 2, -10, 3;f
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 5级考试题及答案
- 2025年广州市花都区狮岭镇芙蓉初级中学教师招聘考试笔试试题(含答案)
- 北京知识产权贯标培训课件
- 2025年佛山市南海区狮山镇英才学校教师招聘考试笔试试题(含答案)
- 医务人员营养培训考核试题(附答案)
- 2024贵州省社区《网格员》备考题汇编(含答案)
- 药品及医疗器械冷链操作培训试题测试题库含答案
- 导游业务综合测试题(含答案)
- 2025年XX市妇联普法知识竞赛题库及答案
- 2025年二级注册结构工程师模拟题和答案分析
- 2024年山西交通控股集团有限公司招聘真题
- 2025-2026学年高一上学期开学第一课主题班会课件
- 光储充一体化项目可行性研究报告
- 2025年全国新高考英语II卷试题解析及复习备考策略(课件)
- 留疆战士考试题库及答案
- 技术经纪人(初级)考试试题(附答案)
- 能源托管服务投标方案(技术方案)
- 建筑热工学基本知识课件
- 充电桩工程施工组织设计方案
- 机械设计手册之 密封装置(课堂PPT)
- 《国家基本药物临床应用指南》《国家基本药物处方集》培训(PPT)
评论
0/150
提交评论