【计算机类职业资格】国家计算机二级(C)73及答案解析.doc
《【计算机类职业资格】国家计算机二级(C)73及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】国家计算机二级(C)73及答案解析.doc(18页珍藏版)》请在麦多课文档分享上搜索。
1、国家计算机二级(C)73 及答案解析(总分:3480.00,做题时间:120 分钟)一、选择题(1-10 题每题 2分,11-50 题(总题数:50,分数:3000.00)1.以下能正确定义数组并正确赋初值的语句是(分数:60.00)A.int N=5,bNN;B.int a12=1,3;C.int c2 =1,2,3,4;D.int d32=1,2,3,4;2.若有定义:int w35;,则以下不能正确表示该数组元素的表达式是【 】。(分数:60.00)A.*(*W+3)B.*(*W+1)4C.*(*(*W+1)D.*(*00+1)3.有以下程序: int fa(int x) return
2、x *x; int fb(int x) return 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); 程序运行后的输出结果是( )。 (分数:60.00)A.-4B.1C.4D.84.有以下程序 main( ) int a=5,b=4,c=3,d=2; if(abc) printf(“%d/n“,d); else if(c-1=d)=1) printf(“%d/n“,d+1); else printf(“%d/n“,
3、d+2); 执行后输出的结果是( )。 (分数:60.00)A.2B.3C.4D.编译时有错,无结果5.设有如下说明 typedef struct ST long a;int b;char c2;NEW; 则下面叙述中正确的是【 】。(分数:60.00)A.以上的说明形式非法B.ST是一个结构体类型C.NEW是一个结构体类型D.NEW是一个结构体变量6.有以下程序: #includestdlib.h main( ) char *p ,* q; p=(char * )malloc(sizeof(char) * 20);q=p; scanf(“%s%s“,p,q); printf(“%s%s/n“
4、,p,q); 若从键盘输入:abc def回车,则输出结果是( )。 (分数:60.00)A.def defB.abc defC.abc dD.d d7.一个栈的初始状态为空。现将元素 1、2、3、4、5、A、B、C、D、E 依次入栈,然后再依次出栈,则元素出栈的顺序是(分数:60.00)A.12345ABCDEB.EDCBA54321C.ABCDEl2345D.5432lEDCBA8.当把以下四个表达式用作 if语句的控制表达式时,有一个选项与其他三个选项含义不同,这个选项是【 】。(分数:60.00)A.k%2B.k%2=1C.(k%2)!=0D.!k%2=19.在 Windows环境下,
5、若要将当前活动窗口存入剪贴板,则可以按( )。(分数:60.00)A.Ctrl+PrintScreen键B.Alt+PrintScreen键C.Shift+PrintScreen键D.PrintScreen键10.以下不能正确表示代数式 2ad/cd的 C语言表达式是(分数:60.00)A.2*a*b/c/dB.a*b/c/d*2C.a/c/d*b*2D.2*a*b/c*d11.有以下程序: main() int m=12,n=34; printf(“%d%d“,m+,+n); printf(“%d%d/n“,n+,+m); 程序运行后的输出结果是【 】。(分数:60.00)A.1235351
6、4B.12353513C.12343514D.1234351312.有以下程序: main() int k=5,n=0; while(k0) switch(k) default:break; case 1:n+=k; case 2: case3:n+=k; k-; printf(“%d/n“,n); 程序运行后的输出结果是【 】。 (分数:60.00)A.0B.4C.6D.7A.*sB.sC.*s+D.(*s)+14.有以下程序 #include main() int i=5; do if(i%3=1) if(i%5=2) printf(“*%d“,i);break; i +; while(i
7、!=0); printf(“/n“); 程序的运行结果是 (分数:60.00)A.*7B.*3*5C.*5D.*2*615.在 16位编译系统上,若有定义 int a=10,20,30,*P= for(i=0;i3;i+) s+=f(i); printf(“%d/n“,s); 程序运行后的输出结果是【 】。 (分数:60.00)A.26B.28C.29D.2418.有以下程序 #include main() FILE * fp;int i,a6=l,2,3,4,5,6; fp=fopen(“d3.dat“,“W+b“);fwrite(a,sizeof(int),6,fp); fseek(fp,
8、sizeof(int)* 3,SEEK_SET);*该语句使读文件的位置指针从文件头向后移动 3个 int型数 据* fread(a,sizeof(int),3,fp);fclose(fp); for(i=0;iA.4,5,6,4,5,6,B.1,2,3,4,5,6,C.4,5,6,1,2,3,D.6,5,4,3,2,1,19.对长度为 n的线性表进行顺序查找,在最坏情况下所需要的比较次数为【 】。(分数:60.00)A.log2nB.n/2C.nD.n+120.有以下程序: main( ) int a=666,b=888; printf(“%d/n“,a,b); 程序运行后的输出结果是( )
9、。 (分数:60.00)A.错误信息B.666C.888D.66688821.以下能正确定义二维数组的是( )。(分数:60.00)A.int a 3;B.int a 3=22*3;C.int a 3=;D.int a23=1,2,3,4;22.有以下程序 main() int i,j; for(i=1;iA.1*1=11*2=21*3=3B.1*1=1 1* 2=2 1*3=3 2*1=2 2*2=4 2*2 =4 2* 3=6 3*1=3 3*3=9C.1*1=1D.1*1=1 1*2=2 2*2=4 2*1=2 2*2=4 1*3=3 2*3=6.3*3=9 3*1=3 3*2=6 3*
10、3=923.有以下程序: main( ) unsigned char a,b,c; a=0x3; b=a|0x8; c=b 1; printf(“%d%d/n“,b,c); 程序运行后的输出结果是( )。 (分数:60.00)A.-11 12B.-19C.12 24D.11 2224.设变量 X和 Y均已正确定义并赋值。以下 if语句中,在编译时将产生错误信息的是【 】。(分数:60.00)A.if(X+);B.if(Xy for(i=1;iargc;i+=2) len+=strlen(argvi); printf(“5d/n”,len); 经编译链接后生成的可执行文件是 ex.exe,若运行
11、时输入以下带参数的命令行 ex abcd efg h3 k44 执行后输出结果是( )。 (分数:60.00)A.14B.12C.8D.626.能将高级语言编写的源程序转换为目标程序的软件是( )。(分数:60.00)A.汇编程序B.编辑程序C.解释程序D.编译程序27.有以下程序 main( ) int i=1,j=1,k=2; if(j+|k+) 执行后输出的结果是( )。 (分数:60.00)A.1,1,2B.2,2,1C.2,2,2D.2,2,328.有以下程序: main( ) char s “Yes/n/No“,*ps=s; puts(ps+4); *(ps+4)=0; puts(
12、s); 程序运行后的输出结果是(选项 D中的第一行是空行)( )。 (分数:60.00)A.n/No Yes /NoB./No YesC.n/NO Yes /NoD./No Yes29.某二叉树中有 n个度为 2的结点,则该二叉树中的叶子结点数为【 】。(分数:60.00)A.n+lB.n-1C.2nD.n230.对如下二叉树,进行后序遍历的结果为【 】。 (分数:60.00)A.ABCDEFB.DBEAFCC.ABDECFD.DEBFCA31.有以下程序: main() int a=1,b; for(b=1;b=10;b+) if(a=8)break; if(a%21)a+=5;contin
13、ue; a-=3; printf(“%d/n“,b); 程序运行后的输出结果是【 】。(分数:60.00)A.3B.4C.5D.632.在 Windows环境下,资源管理器左窗口中的某文件夹左边标有“+“标记表示( )。(分数:60.00)A.该文件夹为空B.该文件夹中含有子文件夹C.该文件夹中只包含有可执行文件D.该文件夹中包含系统文件33.有以下程序 #include stdio.h #define F(X,Y) (X)*(Y) main( ) int a=3, b=4; printf(“%d/n“, F(a+, b+); 程序运行后的输出结果是( )。 (分数:60.00)A.12B.1
14、5C.16D.2034.以下非法的赋值语句是( )。(分数:60.00)A.n=(i=2,+i);B.j+;C.+(i+1);D.x=j0;35.下列对于线性链表的描述中正确的是【 】。(分数:60.00)A.存储空间不一定是连续,且各元素的存储顺序是任意的B.存储空间不一定是连续,且前件元素一定存储在后件元素的前面C.存储空间必须连续,且前件元素一定存储在后件元素的前面D.存储空间必须连续,且各元素的存储顺序是任意的36.若有定义:float x=1.5;int a=1,b=3,C=2;则正确的 switch语句是【 】。(分数:60.00)A.switch(x) case 1.0:prin
15、tf(“*n“); case 2.0:prinff(“*n“);B.switch(int)x); case 1:printf(“*n“); case 2:printf(“*n“);C.switch(a+b) case 1:printf(“*n“); case 2+1:prinff(“*n“);D.switch(a+b) case 1:printf(“*n“); case c:printf(“*n“);37.有以下程序 void fun2(char a,char b)printf(“cc“,a,b); char a=A,b=B; void fun1() a=C; b=D; main() fun1
16、(); printf(“cc“,a,b); fur2(E,F); 程序的运行结果是【 】。 (分数:60.00)A.C D E FB.A B E FC.A B C DD.C D A B38.有以下程序 typedef struct int b,p;A; void f(A C)* 注意:c 是结构变量名 * int j; c. b +=1;c.p+=2; main() int i; A a=1,2; f(a); printf(“d,dn“,a.b,ap); 程序运行后的输出结果是【 】。 (分数:60.00)A.2,3B.2,4C.1,4D.1,239.以下程序段中,不能正确赋字符串(编译时系统
17、会提示错误)的是( )(分数:60.00)A.char s10=”abcdefg”;B.char t =”abcdefg”,*s=t;C.char s10;s=”abcdefg”;D.char s10;strcpy(s,”abcdefg”);40.有以下程序: void fun(int *a,int i,int j) int t; if(ij) t=ai;ai=aj;aj=t; i+; j-; fun(a,i,j); main( ) int x =2,6,1,8,i; fun(x,0,3); for(i=0;i4;i+) printf(“%2d“,xi); printf(“/n“); 程序运行
18、后的输出结果是( )。 (分数:60.00)A.1 2 6 8B.8 6 2 1C.8 1 6 2D.8 6 1 241.设有以下定义和语句 char str20=“Program“,*p; p=str; 则以下叙述中正确的是【 】。 (分数:60.00)A.*p与 str0的值相等B.str与 p的类型完全相同C.str数组长度和 p所指向的字符串长度相等D.数组 str中存放的内容和指针变量 p中存放的内容相同42.有以下程序 #include #define N 5 #define M N+1 #define f(x) (x*M) main() int i1,i2; i1=f(2); i
19、2=f(1+1); printf(“ddn“,i1,i2); 程序的运行结果是【 】。 (分数:60.00)A.12 12B.11 7C.11 11D.12 743.有以下程序: #includestring.h main(int argc,char *argv ) int i,len=0; for(i=1;iargc;i+) len+=strlen(argvi); printf(“%d/n“,len); 程序编译连接后生成的可执行文件是 exlexe,若运行时输入带参数的命令行是: exl abcd efg 10回车 则运行的结果是( )。 (分数:60.00)A.22B.17C.12D.9
20、44.下列叙述中正确的是( )。(分数:60.00)A.C程序中的注释只能出现在程序的开始位置和语句的后面B.C程序书写格式严格,要求一行内只能写一个语句C.C程序书写格式自由,一个语句可以写在多行上D.用 C语言编写的程序只能放在一个程序文件中45.下列叙述中正确的是【 】。(分数:60.00)A.一个算法的空间复杂度大,则其时间复杂度也必定大B.一个算法的空间复杂度大,则其时间复杂度必定小C.一个算法的时间复杂度大,则其空间复杂度必定小D.上述三种说法都不对46.下列关于单目运算符+、-的叙述中正确的是( )。(分数:60.00)A.它们的运算对象可以是任何变量和常量B.它们的运算对象可以
21、是 char型变量和 int型变量,但不能是 float型变量C.它们的运算对象可以是 int型变量,但不能是 double型变量和 float型变量D.它们的运算对象可以是 char型变量、int 型变量和 float型变量47.C语言中用于结构化程序设计的三种基本结构是( )。(分数:60.00)A.顺序结构、选择结构、循环结构B.if、switch、breakC.for、while、do-whileD.if、for、continue48.有下列程序: #include stdio.h void fun(int * s,int n1,int n2) int i,j,t; i=n1;j=n2
22、; while(ij)t=si;si=sj;sj=t;i+;j-; main() int a10=1,2,3,4,5,6,7,8,9,0,k; fun(a,0,3); fun(a,4,9);fun(a,0,9); for(k=0;k10;k+)printf(“%d“,ak);printf(“/n“); 程序的运行结果是( )。 (分数:60.00)A.0987654321B.4321098765C.5678901234D.098765123449.有以下程序: int f(int n) if(n =1)return 1; else return f(n-1)+1; main( ) int i,
23、j=0; for(i=1;i3;i+) j+=f(i); printf(“%d/n“,j); 程序运行后的输出结果是( )。 (分数:60.00)A.4B.3C.2D.150.设有定义 int a=2,b=3,c=4;,则以下选项中值为 0的表达式是【 】。(分数:60.00)A.(!a=1 int sum=0; s0.next=s+1;s1.next=s+2;s2.next=s; p=s; q=p-next; r=q-next; sum+=q-next-num; sum+=r-next-next-num; printf(“%d/n“,sum); (分数:40.00)填空项 1:_53.以下程
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 国家 二级 C73 答案 解析 DOC
