【计算机类职业资格】二级C语言笔试-124及答案解析.doc
《【计算机类职业资格】二级C语言笔试-124及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-124及答案解析.doc(27页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言笔试-124 及答案解析(总分:110.00,做题时间:90 分钟)一、选择题(总题数:40,分数:80.00)1.有以下程序:void fun1(char*p)char*q;q=P;while(*q!=/0)(*q)+;q+;main()char a=“Program“),*p;p=a3;funl(p);printf(“%s/n“,(分数:2.00)A.;程序执行后的输2.有以下程序:main()int k=5,n=0;while(k0)switch(k)default:break;case 1:n+=k;case 2:case 3:n+=k;k-;printf(“%d/n“,n
2、);程序运行后的输出结果是_。(分数:2.00)A.0B.4C.6D.73.当用户要求输入的字符串中含有空格时,应使用的输入函数是_。(分数:2.00)A.scanf()B.getchar()C.gets()D.getc()4.对于长度为 n的线性表,在最坏的情况下,下列各排序法所对应的比较次数中三确的是(分数:2.00)A.冒泡排序为 n/2B.冒泡排序为 nC.快速排序为 nD.快速排序为 n(n-1)/25.下列选项中不属于软件生命周期开发阶段任务的是_。(分数:2.00)A.软件测试B.概要设计C.软件维护D.详细设计6.有以下程序段int j; float y; char name5
3、0;scanf(“%2d%f%s“,j,y,name);当执行上述程序段,从键盘上输入 55566 777abc后,y 的值为_。(分数:2.00)A.55566.0B.566.0C.7777.0D.566777.07.有以下程序:int fun(int x,int n)static int sum=0,I;for(i=0;in;i+)sum+=xi;return sum;main()int a=1,2,3,4,5,b=6,7,8,9,s=0;s=fun(a,5)+fun(b,4);printf(“%d/n“,s);程序执行后的输出结果是_。(分数:2.00)A.45B.50C.60D.558
4、.有以下结构体说明和变量定义,如图所示,指针 p、q、r 分别指向此链表中的三个连续节点。struct nodeint data;struct node*next;*P,*q,*r;现要将 q所指节点从链表中删除,同时要保持链表的连续,(分数:2.00)A.p-next=q-next;B.p-next=P-next-next;C.p-next=r;D.p=q-next;9.下列叙述中正确的是_。(分数:2.00)A.一个算法的空间复杂度大,则其时间复杂度也必定大B.一个算法的空间复杂度大,则其时间复杂度必定小C.一个算法的时间复杂度大,则其空间复杂度必定小D.上述三种说法都不对10.在 E-R
5、图中,用来表示实体之间联系的图形是_。(分数:2.00)A.矩形B.椭圆形C.菱形D.平行四边形11.有以下程序:void f(int b)int i;for(i=2;i6;i+)bi*=2;main()int a10=1,2,3,4,5,6,7,8,9,10,i;f((分数:2.00)A.;for(i=0;i10;i+)printf(“%d,“,ai);程序运行后的输出结果是_12.以下叙述中正确的是_。(分数:2.00)A.预处理命令行必须位于源文件的开头B.在源文件的一行上可以有多条预处理命令C.宏名必须用大写字母表示D.宏替换不占用程序的运行时间13.有以下程序:struct Sint
6、 n;int a20;void f(int*a,int n)int i;for(i=0;in-1;i+)ai+=i;mainf()int i;struct S s10,2,3,1,6,8,7,5,4,10,9;if(s.a,s.n);for(i=0;is.n;i+)printf(“%d“,s.ai);程序运行后的输出结果是_。(分数:2.00)A.2,4,3,9,12,12,11,11,18,9B.3,4,2,7,9,8,6,5,11,10C.2,3,1,6,8,7,5,4,10,9D.1,2,3,6,8,7,5,4,10,914.执行以下程序后,test.txt 文件的内容是(若文件能正常打
7、开)_。#includestdio.hmain()FILE*fp;char*s1=“Fortran“,*s2=“Basic“;if(fp=fopen(“test.txt“,“wb“)=NULL)printf(“Cant open test.txt file/n“);exit(1);fwrite(s1,7,1,fp);/*把从地址 s1开始的 7个字符写到 fp所指文件中*/fseek(fp,0L,SEEK_SET);/*文件位置指针移到文件开头*/fwrite(s2,5,1,fp);fclose(fp);(分数:2.00)A.BasicanB.BasicFortranC.BasicD.Fort
8、ranBasic15.下列叙述中,不符合良好程序设计风格要求的是_。(分数:2.00)A.程序的效率第一,清晰第二B.程序的可读性好C.程序中要有必要的注释D.输入数据前要有提示信息16.以下选项中,不能作为合法常量的是_。(分数:2.00)A.1.234e04B.1.234e0.4C.1.234e+4D.1.234e017.有以下程序:void sum(int a)a0=a-1+a1;main()int a10=1,2,3,4,5,6,7,8,9,10;sum(a2);printf(“%d/n“,a2);程序运行后的输出结果是_。(分数:2.00)A.6B.7C.5D.818.以下不能正确计
9、算代数式 (分数:2.00)A.1/3*sin(1/2)*sin(1/2)B.sin(0.5)*sin(0.5)/3C.pow(sin(0.5),2)/3D.1/3.0*pow(sin(1.0/2),2)19.对于一个正常运行的 C语言程序,以下叙述中正确的是_。(分数:2.00)A.程序的执行总是从 main函数开始,在 main函数结束B.程序的执行总是从程序的第一个函数开始,在 main函数结束C.程序的执行总是从 main函数开始,在程序的最后一个函数中结束D.程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束20.数据库设计的根本目标是要解决_。(分数:2.00)A.数
10、据共享问题B.数据安全问题C.大量数据存储问题D.简化数据维护21.以下叙述中错误的是_。(分数:2.00)A.C语言程序中的#include 和#define 行均不是 C语句B.除逗号运算符外,赋值运算符的优先级最低C.C语言程序中,j+;是赋值语句D.C语言程序中,+、-、*、/、%号是算术运算符,可用于整型和实型数的运算22.有以下程序:main()int i=1,j=2,k=3;if(i+=l(+j=3|k+=3) printf(“%d%d%d/n“,i,j,k):程序运行后的输出结果是_。(分数:2.00)A.1 2 3B.2 3 4C.2 2 3D.2 3 323.以下不构成无限
11、循环的语句或者语句组是_。(分数:2.00)A.n=0;B.n=0;do+n;while(n=0); while(1)n+C.n=10;D.for(n=0,i=1;i+)n+=i;while(n);n-;)24.以下与函数 fseek(fp,OL,SEEK_SET)有相同作用的是_。(分数:2.00)A.feof(fp)B.tell(fp)C.fgetc(fp)D.rewind(fp)25.已定义以下函数:int fun(int*p)return*P;)fun函数返回值是_。(分数:2.00)A.不确定的值B.一个整数C.形参 P中存放的值D.形参 P的地址值26.下列对队列的叙述正确的是_。
12、(分数:2.00)A.队列属于非线性表B.队列按“先进后出”原则组织数据C.队列在队尾删除数据D.队列按“先进先出”原则组织数据27.设已有定义:float x;则以下对指针变量 P进行定义且赋初值的语句中正确的是_。(分数:2.00)A.float*p=1024;B.int*p=(float)x;C.float p=x;D.float*p=x;28.以下四个程序中,完全正确的是_。(分数:2.00)A.#includestdio.hB.#includestdio.hmain(); main()/*programming*/ /*/programming/*/printf(“programmi
13、ng!/n“); printf(“programming!/n“);C.#includestdio.hD.includestdio.hmain() main()/*/*programming*/*/ /*programming*/printf(“programming!/n“); printf(“programming!/n“);29.有以下程序:#includestdio.hint f(int x)int y;if(x=0|x=1)return(3);y=x*x-f(x-2);return y;main()int z;z=f(3);printf(“%d/n“,z);程序的运行结果是_。(分数
14、:2.00)A.0B.9C.6D.830.有以下程序:#includestdio.h#includestring.hvoid fun(char s10,int n)char t;int i,j;for(i=0;in-1;i+)for(j=i+1;jn;j+)/*比较字符串的首字符大小,并交换字符串的首字符*/if(si0sj0)t=si0;si0=sj0;sEj0=t;main()char s510=“bcc“,“bbcc“,“xy“,“aaaacc“,“aabcc“);fun(ss,5);printf(“%s,%s/n“,ss0,ss4);程序的运行结果是_。(分数:2.00)A.xy,aa
15、aaccB.aaaacc,xyC.xcc,aabccD.acc,xabcc31.若有定义:int a23;,以下选项中对 a数组元素正确引用的是_。(分数:2.00)A.a2!1B.a23C.a03D.a12!132.有以下程序:main()char s=“159“,*P;P=s;printf(“%c“,*P+);printf(“%c“,*P+);程序运行后的输出结果是_。(分数:2.00)A.15B.16C.12D.5933.若要求从键盘读入含有空格字符的字符串,应使用函数_。(分数:2.00)A.getc()B.gets()C.getchar()D.scanf()34.程序中若有如下说明和
16、定义语句:char fun(chat*);main()char*s=“one“,a5=0,(*f1)()=fun,ch;以下选项中对函数 fun的正确调用语句是_。(分数:2.00)A.(*f1)(a);B.*f1(*s);C.fun(a);D.ch=*f1(s);35.下列叙述中错误的是_。(分数:2.00)A.在数据库系统中,数据的物理结构必须与逻辑结构一致B.数据库技术的根本目标是要解决数据的共享问题C.数据库设计是指在已有数据库管理系统的基础上建立数据库D.数据库系统需要操作系统的支持36.下列叙述中正确的是_。(分数:2.00)A.软件交付使用后还需要进行维护B.软件一旦交付使用就不
17、需要再进行维护C.软件交付使用后其生命周期就结束D.软件维护是指修复程序中被破坏的指令37.当变量 c的值不为 2、4、6 时,值也为“真”的表达式是_。(分数:2.00)A.(c=2)|(c=4)|(c=6)B.(c=2c=6)|(c!=3)|(c!=5)C.(c=2c=6)!(c%2)D.(c=2c=6)(c%2!=1)38.下列叙述中正确的是_。(分数:2.00)A.程序设计就是编制程序B.程序的测试必须由程序员自己去完成C.程序经调试改错后还应进行再测试D.程序经调试改错后不必进行再测试39.数字字符 0的 ASC值为 48,若有以下程序:main()char a=1,b=2;prin
18、tf(“%c,“,b+);printf(“%d/n“,b-(分数:2.00)A.;40.以下叙述中错误的是_。(分数:2.00)A.算法正确的程序最终一定会结束B.算法正确的程序可以有零个输出C.算法正确的程序可以有零个输入D.算法正确的程序对于相同的输入一定有相同的结果二、填空题(总题数:15,分数:30.00)41.深度为 5的满二叉树有 1 个叶子节点。(分数:2.00)填空项 1:_42.数据结构分为线性数据结构和非线性数据结构,带链的队列属于 1。(分数:2.00)填空项 1:_43.软件测试分为白箱(盒)测试和黑箱(盒)测试,等价类划分法属于 1 测试。(分数:2.00)填空项 1
19、:_44.数据管理技术发展过程经过人工管理、文件系统和数据库系统三个阶段,其中数据独立性最高的阶段是 1。(分数:2.00)填空项 1:_45.数据独立性分为逻辑独立性与物理独立性。当数据的存储结构改变时,其逻辑结构可以不变,因此,基于逻辑结构的应用程序不必修改,称为 1。(分数:2.00)填空项 1:_46.以下程序运行后的输出结果是_。main()int m=011,n=11;printf(“%d%d/ff“,+m,n+);(分数:2.00)填空项 1:_47.已定义 char ch=“$“;int i=1,j;执行 j=! chi+以后,i 的值为 1。(分数:2.00)填空项 1:_4
20、8.以下程序用于判断 a、b、c 能否构成三角形,若能,输出 YES,否则输出 NO。当给 a、b、c 输入三角形三条边长时,确定 a、b、c 能构成三角形的条件是需同时满足三个条件:a+bc,a+cb,b+ca。请填空。main()float a,b,c;scanf(“%f%f%f“,a,b,c);if(_)printf(“YES/n“);/*a、b、c 能构成三角形*/else printf(“NO/n“);/*a、b、c 不能构成三角形*/(分数:2.00)填空项 1:_49.以下程序的功能是:输出 100以内(不含 100)能被 3整除且个位数为 6的所有整数,请填空。main()(i
21、nt i,j;for(i=0;ii0;i+)j=i*10+6;if(_)continue;printf(“%d“,j);(分数:2.00)填空项 1:_50.已知字符 A的 ASC代码值为 65,以下程序运行时若从键盘输入:B33回车则输出结果是_。#includemain()char a,b;a=getchar();scanf(“%d“,b);a=a-A+0;b=b*2;printf(“%c%c/n“,a,b);(分数:2.00)填空项 1:_51.已有定义:double*P;,请写出完整的语句,利用 malloc函数使 p指向一个双精度型的动态存储单元 1。(分数:2.00)填空项 1:_
22、52.以下程序中,fun 函数的功能是求 3行 4列二维数组每行元素中的最大值,请填空:void fun(int,int,int(*)4,int*);main()int a34=12,41,36,28,19,33,15,27,3,27,19,1,b3,i;fun(3,4,a,b);for(i=0;i3;i+)printf(“%4d“,bi);printf(“/n“);void fun(int m,int n,int ar4,int*bar)int i,j,x;for(i=0;im;i+)X=ari0;for(j=0;jn;j+)if(xarij)x=arij;_=x:(分数:2.00)填空项
23、1:_53.以下程序运行后的输出结果是_。#includestring.hvoid fun(char*s,int p,int k)int i;for(i=P;ik-1;i+)si=si+2;main()char s=“abcdefg“;fun(s,3,strlen(s);puts(s);(分数:2.00)填空项 1:_54.以下程序运行后的输出结果是_。fun(int a)int b=0;static int c=3;b+;c+;return(a+b+c);main()int i,a=5;for(i=0;i3;i+)printf(“%d%d“,i,fun(a);printf(“/n“);(分数
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 124 答案 解析 DOC
