【计算机类职业资格】二级C语言笔试-219及答案解析.doc
《【计算机类职业资格】二级C语言笔试-219及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-219及答案解析.doc(27页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试-219 及答案解析(总分:90.00,做题时间:90 分钟)一、选择题(总题数:40,分数:60.00)1.下列叙述中正确的是( )。(分数:1.00)A.一个逻辑数据结构只能有一种存储结构B.逻辑结构属于线性结构,存储结构属于非线性结构C.一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D.一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率2.以下语句定义正确的是( )。(分数:1.00)A.int a14=1,2,3,4,5;B.float a31=1,2,3;C.long a23=1,1,2,1,2,3,0,0;D.double
2、 a3=0;3.以下程序的输出结果是( )。 #includestdio.h main() int a=1,b=3; if(+a0) printf(“/n%d“,c); (分数:1.00)A.9B.10C.12D.217.算法的空间复杂度是指( )。(分数:1.00)A.算法程序的长度B.算法程序中的指令条数C.算法程序所占的存储空间D.算法执行过程中所需要的存储空间18.若输入“abcdef”、“abdef”,以下程序的输出结果为( )。 #includestdio.h #lncludestring.h main() int n; char s120,s220,p1,*p2; scanf(“
3、%s“,s1); scanf(“%s“,s2); P1=s1; p2=s2; n=strcmp(p1,p2); printf(“%d/n“,n);(分数:1.00)A.-1B.0C.“abcdef“D.“abdef“19.若变量都已正确说明,则以下程序段输出结果为( )。 #includestdio.h main() char a=a; int b=2; printf(ab?”*a=%d“:“#b=%d“,a,b); (分数:1.00)A.*a=3B.#b=3C.*a=3#b=5D.全部错误20.下列叙述中错误的是( )。(分数:1.00)A.在 C 语言中,对二进制文件的访问速度比文本文件快
4、B.在 C 语言中,随机文件以二进制代码形式存储数据C.语句 FILE fp;定义了一个名为 fp 的文件指针D.C 语言中的文本文件以 ASCII 码形式存储数据21.若执行下述程序时,若从键盘输入 6 和 8,结果为( )。 main() int a,b,s; scanf(“%d%dt“, printf(“/n%d“,c); (分数:1.00)A.9 B.10C.12D.2解析:解析 本题主要考查 C 语言最基本的算术运算“左移()”和“异或()”。 “左移”或“右移”运算表达式的一般形式为:xn 或 xn。“左移()”运算的规则是将 x 的二进制位全部向左移动 n 位,将左边移动的高位舍
5、弃,右边空出的位补 0:“右移()”运算的规则是将 x 的二进制位全部向右移动 n 位,将右边移动的高位舍弃,左边高位空出要根据原来符号位的情况进行补充,对无符号数则补 0,对有符号数,若为正数则补 0,若为负数则补 1。 “异或”运算是当两个运算量的相应位相同时结果为 0,不相同时结果为 1。b=2 的二进制为(00000010)b2 后为 00001000,a=1 的二进制为 00000001,所以 c=ab2 为 00001001,转化为十进制后为 9。17.算法的空间复杂度是指( )。(分数:1.00)A.算法程序的长度B.算法程序中的指令条数C.算法程序所占的存储空间D.算法执行过程
6、中所需要的存储空间 解析:解析 算法的空间复杂度是指执行这个算法所需要的内存空间。一个算法所占用的存储空间包括算法程序所占的空间、输入的初始数据所占的存储空间以及算法执行中所需要的额外空间。其中额外空间包括算法程序执行过程中的工作单元以及某种数据结构所需要的附加存储空间。如果额外空间量相对于问题规模来说是常数,则称该算法是原地工作的。在许多实际问题中,为了减少算法所占的存储空间,通常采用压缩存储技术,以便尽量减少不必要的额外空间。18.若输入“abcdef”、“abdef”,以下程序的输出结果为( )。 #includestdio.h #lncludestring.h main() int n
7、; char s120,s220,p1,*p2; scanf(“%s“,s1); scanf(“%s“,s2); P1=s1; p2=s2; n=strcmp(p1,p2); printf(“%d/n“,n);(分数:1.00)A.-1 B.0C.“abcdef“D.“abdef“解析:解析 本题考查两个知识点:字符串比较幽数 strcmp(s1,s2),若 s1s2,则返回 1;若s1=s2,则返回 0;若 s1s2,则返回-1。字符串依次比较的是它们相同位置上字符的 ASCII19.若变量都已正确说明,则以下程序段输出结果为( )。 #includestdio.h main() char
8、a=a; int b=2; printf(ab?”*a=%d“:“#b=%d“,a,b); (分数:1.00)A.*a=3B.#b=3C.*a=3#b=5D.全部错误 解析:解析 本题考查 printf 函数的格式和三日运算符“?:”的使用。printf 函数中格式说明符之前插入的任何字符都原样输出。本题中 ab 为真,所以返回“*a=97”。20.下列叙述中错误的是( )。(分数:1.00)A.在 C 语言中,对二进制文件的访问速度比文本文件快B.在 C 语言中,随机文件以二进制代码形式存储数据C.语句 FILE fp;定义了一个名为 fp 的文件指针 D.C 语言中的文本文件以 ASCII
9、 码形式存储数据解析:解析 在 C 语言中,文件指针实际上是指向一个结构体类型的指针,一般称这个结构体类型名为FILE,可以用此类型名来定义文件指针。定义文件类型指针变量的一般形式为:FILE *指针变量名;选项C)中少了“*”,所以选项 C)错误。21.若执行下述程序时,若从键盘输入 6 和 8,结果为( )。 main() int a,b,s; scanf(“%d%dt“,&a,&b); s=a: if(s=b) s*=s; printf(“%d“,s); (分数:2.00)A.36B.64 C.48D.以上都不对解析:解析 首先通过 scanf 函数把从键盘读入的数据赋给变量 a 和 b
10、,if 语句判断如果 a 和 b 不等,执行 s=s*s=64。22.设有定义:char*c;,以下选项中能够使字符型指针 c 正确指向一个字符串的是( )。(分数:2.00)A.charstr=“string“;c=str; B.scanf(“%s“,c);C.c=getchar();D.char str=“string“;strcpy(“C,str“)解析:解析 在题目的题干中定义了字符指针变量 c,在选项 A)中,首先定义字符数组 str,然后再把字符数组 str 的首地址赋给字符指针变量 c。所以选项 A)是正确的。在选项 B)中,应改成 scanf(“%s”,&c);在选项 C)中,
11、getchar 函数的返回值是用户输入的第一个字符的 ASCII 码,如出错返回-1,且将用户输入的字符回显到屏幕,如用户在按回车之前输入了不止一个字符,其他字符会保留在键盘缓存区中,等待后续 getchar 调用读取。即 c 只能指向一个字符而不能指向字符串。在选项 D)中,strcpy 函数只是将 str 字符串中的内容赋给 c,并没有使其指向 str,所以选项 D)是错误的。23.下列叙述中,正确的是( )。(分数:2.00)A.软件交付使用后还需要进行维护 B.软件一旦交付使用就不需要再进行维护C.软件交付使用后其生命周期就结束D.软件维护是指修复程序中被破坏的指令解析:解析 软件的运
12、行和维护是指将已交付的软件投入运行,并在运行使用中不断地维护,根据新提出的需求进行必要而且可能的扩充和删改。而软件生命周期是指软件产品从提出、实现、使用维护到停止使用退役的过程。24.设 a 和 b 均为 int 型变量,且 a=6,b=11,则能使值为 3 的表达式是( )。(分数:2.00)A.b%(a%4)B.b%(a-a%5)C.b%a-a%5D.(b%a)-(a%4) 解析:解析 表达式“a%b”表示的是求 a 除以 b 的余数。因此,选项 A):(6%4)=2,11%2=1;选项 B):(6-6%)=5,11%5=1;选项 C):11%6-6%5=4;选项 D);(11%6)-(6
13、%4)=3。25.有以下程序: #includestdio.h main() int x; scanf (“%d“,&x); if(x=0);else if(x!=5)printf(“%d/n“,x); 程序运行时,输入的值在哪个范围才会有输出结果( )。(分数:2.00)A.不等于 5 的整数B.大于 0 且不等 5 的整数 C.大于 0 或等于 5 的整数D.小于 5 的整数解析:解析 题目中,虽然 else 和第二个 if 不在同一行上,但等价于在同一行上,因此,程序的意思是当 x 大于 0 且不等于 5 时将其打印出来。26.以下不合法的用户标识符是( )。(分数:2.00)A.804
14、zhang B._hhC.yy614D.If解析:解析 C 语言规定,标识符是由字母、数字或下划线组成,并且它的第一个字符必须是字母或下划线。27.已知 char a;int b;float e;double d;则表达式 a-b+c-d 结果为( )型。(分数:2.00)A.double B.floatC.intD.char解析:解析 C 语言中允许进行不同数据类型的混合运算,但在实际运算时,要先将不同类型的数据转化成同一类型再进行运算。类型转换的一般规则是:运算中将所有 char 型转换成 int 型,float 型转换成 double 型;低级类型服从高级类型,并进行相应的转换,数据类型
15、由低到高的顺序为:*char-int-unsigned-long-float-double;赋值运算中最终结果的类型,以赋值运算符左边变量的类型为准,即赋值运算符右端值的类型向左边变量的类型看齐,并进行相应转换。28.下列选项中,不属于数据库管理的是( )。(分数:2.00)A.数据库的建立B.数据库的调整C.数据库的监控D.数据库的校对 解析:解析 数据库管理一般包括:数据库的建立、数据库的调整、数据库的重组、数据库的安全性控制与完整性控制、数据库的故障恢复和数据库的监控。29.有以下程序: #includestdio.h #includestring.h struct A int a;ch
16、ar b10;double c; void f(struct A*t); main() struct A a=1001,“ZhangDa“,1098.0; f(&(分数:2.00)A.;printf(“%d,%s,%6.1f/n“,a.a,a.b,a.c); void f(st解析:解析 本题主要考查是的函数调用时参数之间的传递问题。在 C 语言中参数之间的传递是传值,也就是把实参的值复制一份传递给形参,而实参的值不发生变化。但对于指针调用来说,函数直接对实参的地址操作,因此在这种情况下实参变化。30.在下列选项中,没有构成死循环的程序段是( )。(分数:2.00)A.int i=100; f
17、or(;) i=i%10+1; if(i10)break; B.while(1);C.int k=0; do+k;while(k=10); D.int s=12; while(s); -s;解析:解析 本题考查死循环的知识。选项 A)中,for 循环没有任何控制语句就会一直执行下去,所以不可能通过控制表达式的值结束循环。循环体内,i=i%10+1 这个表达式的值永远小于 10,所以永远不会跳出循环,是死循环;选项 B)中,while 中表达式永远是非 0,不会结束循环;选项 C)中,当 k10 时,结束循环;选项 D)中,while(s);后面没有任何表达式而是直接加了一个分号,会一直执行,形
18、成死循环。31.假设有语句 sizeof(double),则它是( )。(分数:2.00)A.一个整型表达式 B.一个双精度浮点型表达式C.一种函数调用D.一种函数定义解析:解析 sizeof(double)是 C 语言内部规定的一个计算参数(double)在计算机的内存中所占用的字节数量的函数,它返回一个整数值。32.在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是( )。(分数:2.00)A.并B.交 C.投影D.除解析:解析 关系 R 与 S 经交运算后所得到的关系是由那些既在 R 内又在 S 内的有序组所组成,记为RS,交运算不改变关系表中的属性个数但能减少元组个数。33
19、.下列程序的运行结果是( )。 #includestdio.h void fun(int*s,int*p) static int t=3; *p=st; t-; void main() int a=2,3,4,5,k,x; for(k=0;k4;k+) fun(a,&x); printf(“%d,“,x); (分数:2.00)A.5,4,3,2, B.2,3,4,5,C.2,2,2,2,D.5,5,5,5,解析:解析 分析 fun 函数程序段,可知 fun 函数要实现的功能是将 s 中第(t+1)个元素以前的元素逆置赋给数组 p。由于 fun 函数定义了静态变量 t=3,因此,在主函数中调用函
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 219 答案 解析 DOC
