【计算机类职业资格】二级C语言笔试-360及答案解析.doc
《【计算机类职业资格】二级C语言笔试-360及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-360及答案解析.doc(36页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试-360 及答案解析(总分:104.00,做题时间:90 分钟)一、选择题(总题数:50,分数:70.00)1.函数调用 strcat(strcpy(str1,str2),str3)的功能是( )。A) 将字符串 str1 复制到字符串 str2 中后再连接到字符串 str3 之后B) 将字符串 str1 连接到字符串 str2 之后再复制到字符串 str3 之后C) 将字符串 str2 复制到字符串 sir1 中后再将字符串 str3 连接到字符串 str1 之后D) 将字符串 str2 连接到字符串 str1 之后再将字符串 str1 复制到字符串 str3 中(分数:2
2、.00)A.B.C.D.2.设 fp 为指向某二进制文件的指针,且已读到此文件末尾,则函数 feof (fp)的返回值为( )。A) EOF B) 非 0 值 C) 0 D) NULL(分数:1.00)A.B.C.D.3.下列不正确的转义字符是( )。A) / B) /t C) /n D) 088(分数:2.00)A.B.C.D.4.以下叙述中正确的是( )。A) C 程序的基本组成单位是语句 B) C 程序中的每一行只能写一条语句C) 简单 C 语句必须以分号结束 D) C 语句必须在一行内写完(分数:1.00)A.B.C.D.5.有下列程序:#include“stdio.h“main()i
3、nt x=0;int y=0;while(x7x+;printf(“%d,%d“,y,x);程序的输出结果是( )。A) 0,7 B) 7,7 C) 0,6 D) 1,6(分数:2.00)A.B.C.D.6.数据的存储结构是指A) 数据所占的存储空间量 B) 数据的逻辑结构在计算机中表示C) 数据在计算机中的顺序存储方式 D) 存储在外存中的数据(分数:1.00)A.B.C.D.7.下列程序的输出结果是( )。#include stdio.hstruct abcint a, b, c, s;main()struct abc s2=1,2,3,4,5,6;int t;t=s0.a+s1.b;pr
4、intf(“%d/n“,t);A) 5 B) 6 C) 7 D) 8(分数:2.00)A.B.C.D.8.有以下程序main() int m=3 n=4,X;X=-m+;x=x+8/+n;printf(“%d/n“,x);程序运行后的输山结果是A) 3 B) 5 C) -1 D) -2(分数:1.00)A.B.C.D.9.以下叙述中错误的是( )。A改变函数形参的值,不会改变对应实参的值B函数可以返回地址值C可以给指针变量赋一个整数作为地址值D当在程序的开头包含文件 stdio.h 时,可以给指针变量赋 NULL(分数:1.00)A.B.C.D.10.有定义语句:int b;char c10;
5、,则正确的输入语句是( )。A) scanf(“%d%s“, B) scanf(“%d%s“,C) scanf(“%d%s“,b,c); D) scanf(“%d%s“,b,(分数:1.00)A.B.C.D.11.下列不能正确计算代数式 (分数:1.00)A.B.C.D.12.若程序中定义了以下函数double myadd(double a,double b) return(a+b) ;并将其放在调用语句之后,则在调用之前应该对函数进行说明,以下选项中错误的说明是A) double myadd(double a,b) ; B) double myadd(double,double);C) do
6、uble myadd(double b,double a) ; D) double myadd(double x,double y);(分数:1.00)A.B.C.D.13.有以下程序main()int m,n,p;scanf(“m=%dn=%dp=%d“,下面各输入语句中错误的是( )。A) scanf(“%d“,C) scanf(“%c“,(分数:1.00)A.B.C.D.15.下面程序的运行结果是( )。#includestdio.hmain()static char a=“Languagef“ ,b=“ programe“;char*p1,*p2;int k;p1=a;p2=b;for
7、(k=0;k=7;k+)if(*(p1+k)=*(p2+k) printf(“c“,*(p1+k);A) gae B) ga C) Language D) 有语法错(分数:1.00)A.B.C.D.16.有以下计算公式:(分数:1.00)A.B.C.D.17.以下选项中可作为 C 语言合法常量的是A) -80 B) -080 C) -8e1.0 D) -80.0e(分数:1.00)A.B.C.D.18.下面程序的功能是输出以下形式的金字塔图案:*main()int i,j;for(i=1;i=4;i+)for(j=1;j=4-i;j+) printf(“);for(j=1;j=;j+) pri
8、ntf(“*“);printf(“/n“);在下画线处应填入的是( )。Ai B2*i-1 C2*i+1 Di+2(分数:1.00)A.B.C.D.19.有下列程序段:struct Stint x;int *y;)*pt;int a=1,2),b=3,4);struct st c2=10,a,20,b);pt=c;下列选项中表达式的值为 11 的是( )。A) *pt- y B) pt- x C) + +pt- x D) (pt+ +)-x(分数:2.00)A.B.C.D.20.设变量已正确定义,以下不能统计出一行中输入字符个数(不包含回车符)的程序段是A) n=0; while( ch=ge
9、tchar()!=/n) n+;B) n=0; while( getchar()! =/n) n+;C) for( n=0; getehar()!=/n; n+);D) n=0; for( ch=getchar(); ch!=/n; n+);(分数:2.00)A.B.C.D.21.以下程序企图把从终端输入的字符输出到名为 abctxt 的文件中,直到从终端读入字符#号时结束输入和输出操作,但程序有错。#includestdiohmain()FILE*fout;char ch;four=fopen(abc.txt,w);ch=fgetc(stdin);while(ch!=#)fputc(ch,f
10、out);ch=fgetc(stdin);felose(fout);出错的原因是A) 函数 fopen 调用形式错误 B) 输入文件没有关闭C) 函数 fsetc 调用形式错误 D) 文件指针 stdin 没有定义(分数:1.00)A.B.C.D.22.字长为 16 位的计算机是指_。A) 该计算机能够处理的最大数不超过 16B) 该计算机中的 CPU 可以同时处理 16 位的二进制信息C) 该计算机的内存量为 16MBD) 该计算机每秒钟所能执行的指令条数为 16MIPS(分数:2.00)A.B.C.D.23.设有如下说明:typedef struct ST(long a;int b;cha
11、r c2;)NEW;则下面叙述中正确的是( )A) 以上的说明形式非法 B) ST 是一个结构体类型C) NEW 是一个结构体类型 D) NEW 是一个结构体变量(分数:1.00)A.B.C.D.24.在以下给出的表达式中,与 while(E)中的(E)不等价的表达式是( )。A) (!E=0)B) (E0|E0)C) (E=0)D) (E!=0)(分数:1.00)A.B.C.D.25.有以下程序:main()int k=5, n=0;doswitch(k)case 1: case 3: n+1; k-break;default: n=0; k-;case 2: case 4: n+=2; k
12、-; break;printtf(“%d“, n);while (k0n5);程序运行后的输出结果是( )。A) 235 B) 0235 C) 02356 D) 2356(分数:1.00)A.B.C.D.26.已定义以下函数:int fun(int*p)return*P;)fun 函数返回值是_。A) 不确定的值 B) 一个整数C) 形参 P 中存放的值 D) 形参 P 的地址值(分数:2.00)A.B.C.D.27.以下正确的程序段是A) char str1=“12345“,str2=“abcdef“;B) char str10,*st=“abcde“;strcat(str,st);C) c
13、harstr10=“ “。*st=“abcde“;strcat(str,st);D) char*st1=“12345“,*st2=“abcde“;strcat(st1,st2);(分数:2.00)A.B.C.D.28.以下程序段中,能够通过调用函数 fun,使 main 函数中的指针变量 p 指向一个合法的整型单元的是A) main() int*p; fun(p); int fun(int*p) int s; p B) mainint *p;fun( *p= C) #include stdlib.h main() int *p;fun( int fun(int*p) *p=(int*)mall
14、oc(2); D) #include stdlib.hmain()int *p;fun(p);int fun(int *p)p=(int*)malloc(sizeof(int);(分数:1.00)A.B.C.D.29.下面说明不正确的是A) char a10=“china“; B) char a10,*p=a;p=“china“C) char *a;a=“china“; D) char a10,*p;p=a=“china/(分数:2.00)A.B.C.D.30.下面不属于软件设计原则的是A) 抽象 B) 模块化 C) 自底向上 D) 信息隐蔽(分数:2.00)A.B.C.D.31.对长度为 n
15、 的线性表进行顺序查找,在最坏的情况下需要比较的次数为( )。A) 125 B) n/2C) n D) n+1(分数:2.00)A.B.C.D.32.下列程序的输出结果是( )。#include stdio.hmain()struct stint y,x,z;unionlong i;int j;char k;un;printf(“%d,%d/n“,sizeof(struct st),sizeof(un);A) 6, 2 B) 6, 4 C) 8, 4 D) 8, 6(分数:2.00)A.B.C.D.33.按照“先进先出”组织数据的数据结构是( )。A) 队列 B) 栈 C) 双向链表 D) 二
16、叉树(分数:2.00)A.B.C.D.34.已知函数的调用形式为 fread(buf,size,count,fp),参数 buf 的含义是A) 一个整型变量,代表要读入的数据项总数B) 一个文件指针,指向要读的文件C) 一个指针,指向要读入数据的存放地址D) 一个存储区,存放要读的数据项(分数:2.00)A.B.C.D.35.以下语句或语句组中,能正确进行字符串赋值的是_。A) char*sp;*sp=“right!“;B) char s10;s=“right!“;C) char s10;*s=“right!“;D) char*sp=“right!“;(分数:2.00)A.B.C.D.36.若
17、有定义:int a=4,b=5;float x=3.4,y=2.1;,则下列表达式的值为( )。(float)(a+B) /2+(int)x%(int)yA) 5.5 B) 55C) 5.500000 D) 55.00000(分数:2.00)A.B.C.D.37.在 E-R 图中,用来表示实体的图形是( )。A) 矩形 B) 椭圆形 C) 菱形 D) 三角形(分数:1.00)A.B.C.D.38.16 位二进制补码表示的数据范围是 ( )A0(2 16-1)B02 15C-2 15(2 15-1)D-2 152 15(分数:1.00)A.B.C.D.39.树是结点的集合,它的根结点的数目是(
18、)。A) 有且只有 1 个 B) 1 或多于 1 C) 0 或 1 D) 至少有 2 个(分数:2.00)A.B.C.D.40.可在 C 程序中用作用户标识符的一组标识符是_2007 y-m-d Dr.Tom BiglA) and B) Date C) Hi D) case(分数:1.00)A.B.C.D.41.已有定义:char c; ,程序前面已在命令行中包含 ctype.h 文件,不能用于判断 c 中的字符是否为大写字母的表达式是( )。A) isupper(C) B) A=c=ZC) A=cc=Z D) c=(z-32) (a-32) =c(分数:1.00)A.B.C.D.42.若有以
19、下结构体定义,则_是正确的引用或定义。struct exampleint x;int y;v1;A) example.x=10 B) example v2.x=10C) struct v2;v2.x=10 D) struct example v2=10;(分数:1.00)A.B.C.D.43.数据库管理系统中用来定义模式、内模式和外模式的语言为A) C B) Basic C) DDL D) DML(分数:1.00)A.B.C.D.44.为了合理组织数据,应遵循的设计原则是 ( )A) “一事一地”的原则,即一个表描述一个实体或实体之间的一种联系B) 用外部关键字保证有关联的表之间的联系C) 表
20、中的字段必须是原始数据和基本数据元素,并避免在表之间出现重复字段D) 以上各原则都包括(分数:1.00)A.B.C.D.45.有以下程序:struct STUchar name10;int num;;void f1(struct STU c)struct STU b=“LiSiGuo“,2042);c=b;void f2(struct STU *c)struct STU b=“SunDan“,2044);*c=b;main()struct STU a=“YangSan“,2041,b=“WangYin“,2043);f1(a);f2(printf(“%d %d/n“,a.num,b.num);
21、执行后输出结果是( )。A) 2041 2044 B) 2041 2043 C) 2042 2044 D) 2042 2043(分数:1.00)A.B.C.D.46.若有下列说明和语句,则对结构体变量 st 中成员 i 的引用方式不正确的是( )。Struct stuint i;int name;st,*p;p=k=-1,k=1; i+, k+)printf(“*/n“);A) 判断循环结束的条件不合法 B) 是无限循环C) 循环一次也不执行 D) 循环只执行一次(分数:1.00)A.B.C.D.50.在软件开发中,下面任务不属于设计阶段的是( )。A) 数据结构设计 B) 给出系统模块结构C
22、) 定义模块算法 D) 定义需求并建立系统模型(分数:1.00)A.B.C.D.二、填空题(总题数:20,分数:34.00)51.mystrlen 函数的功能是计算 str 所指字符串的长度,并作为函数值返回。请填空。int mystrlen(char*str)int ifor(i=0;_!=/0;i+);return(i);(分数:2.00)填空项 1:_52.若从键盘输入 34,则以下程序输出的结果是_。#includestdio.hmain()int a;scanf(“%d“,char s21,*p;for(i=0;i20;i+)si=getchar();si=_;p=_;while(*
23、p) putchar(_);(分数:2.00)填空项 1:_61.以下函数用来求出两整数之和,并通过形参将结果传回,请填充完整。void func(int x,int y, _z)*z=x+y;(分数:2.00)填空项 1:_62.己定义 char ch=$;int i=l,j;,执行 j=!ch jn;j+) if(_) x=arij; bri=x; (分数:2.00)填空项 1:_65.算法的复杂度主要包括 1 复杂度和空间复杂度。(分数:1.00)填空项 1:_66.设有定义“struct int a; float b; char c; abc, *p_abc=abc; “,则对结构体成
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 360 答案 解析 DOC
