【计算机类职业资格】二级C语言笔试29及答案解析.doc
《【计算机类职业资格】二级C语言笔试29及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试29及答案解析.doc(19页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试 29 及答案解析(总分:80.00,做题时间:90 分钟)一、B选择题/B(总题数:50,分数:50.00)1.设 a、b 和 c 都是 int 型变量,且 a=3、b=4、c=5,则下面的表达式中,值为 0 的表达式是_。(分数:1.00)A.a main() int i,*p= for(i=0;i2;i+) if(i=0)aaii+1=*p+1; else +p; printf(“%d“,*p); 的输出是_。(分数:1.00)A.23B.26C.33D.363.下述关于数据库系统的叙述中正确的是_。(分数:1.00)A.数据库系统减少了数据冗余B.数据库系统避免了一切
2、冗余C.数据库系统中数据的一致性是指数据类型的一致D.数据库系统比文件系统能管理更多的数据4.设有以下定义和语句,输出的结果是(用 small 模式编译,指针变量 2 个字节)_。 struct date long *cat; struct date *next; double dog; too; printf(“%d“,sizeof(too);(分数:1.00)A.20B.16C.14D.125.若有以下定义和语句: int a=1,2,3,4,5,6,7,8,9,10,*p=a; 则值为 3 的表达式是_。(分数:1.00)A.p+=2,*(p+)B.P+=2,*+pC.P+=3,*p+D
3、.P+=2,+*p6.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是_。(分数:1.00)A.控制流B.加工C.数据存储D.源和潭7.关系表中的每一横行称为一个_。(分数:1.00)A.元组B.字段C.属性D.码8.不能把字符串“Hello!“赋给数组 b 的语句是_。(分数:1.00)A.char b10=H,e,l,l,o,!;B.char b10=h,e,l,l,o,!;C.char b10;strcpy(b,“Hello!“);D.char b10=“Hello!“;9.以下程序段给数组所有的元素输入数据,请选择正确
4、答案填入。 #includestdio.h main() int a10,i=0; while(i10)scanf(“%d“,_); (分数:1.00)A.a+(i+)B.的输出为_。(分数:1.00)A.10B.11C.12D.语法错误11.下面程序的输出是_。 typedef union long x2; int y4; char z8; MYTYPE; MYTYPE them; mare() printf(“%d/n“,sizeof(them);(分数:1.00)A.32B.16C.8D.2412.下面程序的输出是_。 main() char *s=“12134211“; int v1=
5、0,v2=0,v3=0,v4=0,k; for (k=0;sk;k+) switch(sk) default:v4+; case1:v1+; case3:v3+; case2:v2+; printf(“v1=%d,v2=%d,v3=%d,v4=%d/n“,v1,v2,v3,v4); (分数:1.00)A.v1=4,v2=2,v3=1,v4=1B.v1=4,v2=9,v3=3,v4=1C.v1=5,v2=8,v3=6,v4=1D.v1=8,v2=8,v3=8,v4=813.fgetc 函数的作用是从指定文件读入个字符,该文件的打开方式必须是_。(分数:1.00)A.只读B.追加C.读或读写D.以
6、上均正确14.若有下面的说明和定义,则 sizeof(struct aa)的值是_。 struct aa int r1;double r2;float r3; union uuchar u15;long u22ua; mya;(分数:1.00)A.30B.29C.24D.2215.若执行下面程序时从键盘上输入 5, main() int x; scanf(“%d“, if(x+5)printf(“%d/n“,x); else printf(“%d/n“,x-); 则输出是_。(分数:1.00)A.7B.6C.5D.416.下面程序段中 c 的二进制值是_。 char a=3,b=6,c; c=
7、ab1;(分数:1.00)A.00001011B.00001111C.00011110D.0001110017.若有程序 fun(int a,int b) static int c=0; c+=a+b; rerurn c; main() int x=5,y=3,z=7,r; r=fun(y,x+y),z); r=fun(x,y); printf(“%d/n“,r); 上面程序的输出结果是_。(分数:1.00)A.23B.15C.19D.1818.以下程序运行后,输出结果是_。 main() char *d=“ab“,“cde“; printf(“%x“,d1); (分数:1.00)A.cdeB
8、.字符 c 的 AScII 码值C.字符 c 的地址D.出错19.下面程序输出的结果是_。 main() int i=5,j=9,x; x=(i=j?i:(j=7); printf(“/n%d,%d“,i,j); (分数:1.00)A.5,7B.5,5C.语法错误D.7,520.若 x 是整型变量,pb 是基类型为整型的指针变量,则正确的赋值表达式是_。(分数:1.00)A.pb= printf(“%d/n“,x=x1); 的输出是_。(分数:1.00)A.100B.160C.120D.6422.下列叙述中正确的是_。(分数:1.00)A.线性表是线性结构B.栈与队列是非线性结构C.线性链表是
9、非线性结构D.二叉树是线性结构23.一个良好的算法由下面的基本结构组成,但不包括_。(分数:1.00)A.顺序结构B.选择结构C.循环结构D.跳转结构24.请选出以下程序的输出结果_。 #includestdio.h sub(x,y,z) int x,y,*z; *z=y-x; main() int a,b,c; sub(10,5,sub(7,a,sub(a,b, printf(“%d,%d,%d/n“,a,b,c); (分数:1.00)A.5,2,3B.-5,-12,-7C.-5,-12,-17D.5,-2,-725.请选出正确的程序段_。(分数:1.00)A.int *p scanf(“%
10、d“,; B.int *s,k; *s=100; C.int *s,k; char *p,c; s= p= *p=a; D.int *s,k; char *p,e; s= p= s=p; *s=1; 26.下面程序在屏幕上的输出是_。 main() printf(“ab/b/bc“); (分数:1.00)A.ab/b/bcB.acC.abcD.abc27.字符(char)型数据在微机内存中的存储形式是_。(分数:1.00)A.反码B.补码C.EBCDIC 码D.ASCII 码28.算法的时间复杂度是指_。(分数:1.00)A.执行算法程序所需要的时间B.算法程序的长度C.算法执行过程中所需要的
11、基本运算次数D.算法程序中的指令条数29.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是_。(分数:1.00)A.地址传递B.单向值传递C.由实参传递给形参,再由形参传递给实参D.传递方式由用户指定30.数据库设计包括两个方面的设计内容,它们是_。(分数:1.00)A.概念设计和逻辑设计B.模式设计和内模式设计C.内模式设计和物理设计D.结构特性设计和行为特性设计31.结构化程序设计主要强调的是_。(分数:1.00)A.程序的规模B.程序的易读性C.程序的执行效率D.程序的可移植性32.若要用下面的程序片段使指针变量 p 指向一个存储整型变量的动态存储单元 int *p p
12、=_malloc(sizeof(int); 则应填入_。(分数:1.00)A.intB.int*C.(*inD.(int*)33.设有如下程序 #includestdio.h main() int *k, *j,i=100; j= k= printf(“%d/n“”,*k); 上述程序的输出结果是_。(分数:1.00)A.运行错误B.100C.i 的地址D.j 的地址34.以下程序 #includestdio.h #includestring.h main() char*p1=“abc“,*p2=“ABC“,str50=“xyz“; strcpy(ar+2,strcat(p1,p2); pri
13、ntf(“%s/n“,str); 的输出是_。(分数:1.00)A.xyzabcABCB.zabeABCC.yzabcABCD.xyabcABC35.软件需求分析一般应确定的是用户对软件的_。(分数:1.00)A.功能需求B.非功能需求C.性能需求D.功能需求和非功能需求36.以下程序的输出结果是_。 #includestdio.h #define FUDGE(y) 2.84+y #define PR(a) printf(“%d“,(int)(a) #define PRINT1(a) PR(a);putchar(/n) main() int x=2; PRINT1(FUDGE(5)*x); (
14、分数:1.00)A.11B.12C.13D.1537.设有以下语句,其中不是对 a 数组元素的正确引用的是:_(其中 0i10) int a10=0,1,2,3,4,5,6,7,8,9,*p=a;(分数:1.00)A.ap-aB.*( printf(“k=%d,k=%o,k=%x/n“,k,k,k); (分数:1.00)A.k=11,k=12,k=11B.k=11,k=13,k=13C.k=11,k=013,k=0xbD.k=11,k=13,k=B41.有以下程序,程序运行后的输出结果是_。 int f(int b4) int i,j,s=0; for(j=0;j4;j+) i=j; if(i
15、2)i=3-j; s+=bij; return s; main() int a44=1,2,3,4,0,2,4,6,3,6,9,12,3,2,1,0; printf(“%d/n“,f(a); (分数:1.00)A.22B.11C.18D.1642.下面程序 main() int x=100, a=10, b=20, ok1=5, ok2=0; if(ab) if(b!=15) if(!ok1) x=1; else if(ok2)x=10; x=1; printf(“%d/n“,x); 的输出是_。(分数:1.00)A.-1B.0C.1D.不确定的值43.有以下程序: #includestdio
16、.h main() char c6; int i=0; for(;i6;ci=getchar(),i+);for(i=0;i6;i+)putchar(ci; printf(“/n“); 如果从键盘上输入: ab回车 c回车 def回车 则输出结果为_。(分数:1.00)A.a b c d e fB.a b c dC.ab c dD.abcdef44.下面程序的输出是_。 main() int x=3,y=6,a=0; while(x+!=(y-=1) a+=1; if(yx)break; printf(“x=%d,y=%d,a=%d/n“,x,y,a); (分数:1.00)A.x=4,y=4,
17、a=1B.x=5,y=5,a=1C.x=5,y=4,a=3D.x=5,y=4,a=145.请读程序: #includestdio.h main() int a;float b,c; scanf(“%2d%3t%4f“, printf(“/na=%d,b=%f,c=%f/n“,a,b,c); 若运行时从键盘上输入(图片),则上面程序的输出结果是_。(分数:1.00)A.a=98,b=765,c=4321B.a=10,b=432,c=8765C.a=98,b=765.000000,c=4321.000000D.a=98,b=765.0,c=4321.046.下面关于完全二叉树的叙述中,错误的是_。
18、(分数:1.00)A.除了最后层外,每层上的结点数均达到最大值B.可能缺少若干个左右叶子结点C.完全二叉树般不是满二叉树D.具有结点的完全二叉树的深度为log 2n+147.下列司用于 C 语言用户标识符的组是_。(分数:1.00)A.void define WORDB.a3_b3 _123 CarC.For -abc IFCaseD.2a DO sizeof48.以下程序运行后,输出结果为_。 main() int a23=1,3,5,7,9,11,*s2,*pp,*p; s0=a0,s1=a1; pp=s; p=(int*)malloc(sizeof(int); *pp=s11; p=*p
19、p; printf(“%d/n“,*p); (分数:1.00)A.1B.7C.9D.1149.以下程序的输出结果是_。 #includestdio.h #includesiring.h fun(char *w,int n) char t,*s1,*s2; s1=w;s2=w+n-1; while(s1s2) t=*s1+; *s1=*s2-; *s2=t; main() char *p; p=“1234567“; fun(p,strlen(p); puts(p); (分数:1.00)A.1234567B.7654321C.1711717D.717717150.以下对枚举类型名的定义中正确的是_
20、。(分数:1.00)A.enum a=one,two,three;B.enum aon=9,two=-1,three;C.enum a=“one“,“two“,“three“;D.enum a“one“,“two“,“three“;二、B填空题/B(总题数:15,分数:30.00)51.在先左后右的原则下,根据访问根结点的次序,二叉树的遍历可以分为三种:前序遍历、U 【1】 /U遍历和后序遍历。(分数:2.00)填空项 1:_52.结构化程序设计方法的主要原则可以概括为自顶向下、逐步求精、U 【2】 /U和限制使用goto 语句。(分数:2.00)填空项 1:_53.软件测试是保证软件质量的重
21、要手段,而软件测试的主要和重要的测试方法是通过测试数据和U 【3】 /U的设计来实现。(分数:2.00)填空项 1:_54.数据库系统的三级模式分别为U 【4】 /U模式、内部级模式与外部级模式。(分数:2.00)填空项 1:_55.数据字典是各类数据描述的集合,它通常包括 5 个部分,即数据项、数据结构、数据流、U 【5】 /U和处理过程。(分数:2.00)填空项 1:_56.下面程序的输出是U 【6】 /U。 main() int arr10,i,k=0; for(i=0;i10;i+) arri=i; fov(i=1;i4;i+) k+=arri+i; printf(“%d/n“,k);
22、(分数:2.00)填空项 1:_57.若 a=10,b=20,则表达式!(ab)的值是U 【7】 /U。(分数:2.00)填空项 1:_58.有以下程序 int fa(int x)return x*x; int fb(int x)retum x*x*x; int f(int(*f1)(),int(*f2)(),int x) return f2(x)-f1(x); main() int i;i=f(fa,fb,2);printf(“%d/n“,i); 程序运行后,输出结果是U 【8】 /U。(分数:2.00)填空项 1:_59.下面程序的输出是U 【9】 /U。 main() enum erne
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 29 答案 解析 DOC
