[计算机类试卷]国家二级(C语言)机试模拟试卷38及答案与解析.doc
《[计算机类试卷]国家二级(C语言)机试模拟试卷38及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C语言)机试模拟试卷38及答案与解析.doc(30页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C语言)机试模拟试卷 38及答案与解析 一、选择题 1 在最坏情况下 ( A)快速排序的时间复杂度比冒泡排序的时间复杂度要小 ( B)快速排序的时间复杂度比希尔排序的时间复杂度要小 ( C)希尔排序的时间复杂度比直接插入排序的时间复杂度要小 ( D)快速排序的时间复杂度与希尔排序的时间复杂度是一样的 2 在深度为 7的满二叉树中,度为 2的结点个数为 ( A) 64 ( B) 63 ( C) 32 ( D) 31 3 设栈的顺序存储空间为 S(1: m),初始状态为 top=m+1。现经过一系列入栈与 退栈运算后, top=20,则当前栈中的元素个数为 ( A) 30 ( B) 2
2、0 ( C) m-19 ( D) m-20 4 算法空间复杂度的度量方法是 ( A)算法程序的长度 ( B)算法所处理的数据量 ( C)执行算法所需要的工作单元 ( D)执行算法所需要的存储空间 5 下面不属于软件开发阶段任务的是 ( A)测试 ( B)可行性研究 ( C)设计 ( D)实现 6 下面属于字符类的实例是 ( A) 518 ( B) 5 ( C) nm ( D) n 7 某系统结构图如下图所示 该系统结构 图的最大扇出数是 ( A) n ( B) 1 ( C) 3 ( D) 4 8 一个兴趣班可以招收多名学生,而一个学生可以参加多个兴趣班。则实体兴趣班和实体学生之间的联系是 (
3、A) 1:1联系 ( B) 1:m联系 ( C) m:1联系 ( D) m:n联系 9 有三个关系表 R、 S和 T如下,其中三个关系对应的关键字分别为 A, B和复合关键字( A, B)。 表 T的记录项( b,q,4)违反了 ( A)实体完整性约束 ( B)参照完整性约束 ( C)用户定义的完整性约束 ( D)关系完整性约束 10 在数据库系统中,给出数 据模型在计算机上物理结构表示的是 ( A)概念数据模型 ( B)逻辑数据模型 ( C)物理数据模型 ( D)关系数据模型 11 若有定义语句: int a=12;,则执行语句: a+= a-= a*a;后, a的值是 ( A) -264
4、( B) 552 ( C) 144 ( D) 264 12 若在程序中变量均已定义成 int类型,且已赋大于 1的值,则下列选项中能正确表示代数式 的表达式是 ( A) 1.0/a/b/c ( B) 1/(a*b*c) ( C) 1.0/a*b*c ( D) 1/a/b/(double)c 13 有以下程序 #include stdio.h main() int x=010, y=10; printf(“%d,%dn“, +x, y-); 程序运行后的输出结果是 ( A) 10,9 ( B) 11,10 ( C) 010,9 ( D) 9,10 14 以下选项中叙述正确的是 ( A) C语言的
5、标识符可分为关键字、预定义标识符和用户标识符三类 ( B) C语言的标识符可分为语句、变量和关键字三类 ( C) C语言的标识符可分为函数名、变量和预定义标识符三类 ( D) C语 言的标识符可分为运算符、用户标识符和关键字三类 15 以下选项中叙述正确的是 ( A)函数体必须由 开始 ( B) C程序必须由 main语句开始 ( C) C程序中的注释可以嵌套 ( D) C程序中的注释必须在一行完成 16 已知 a=5,b=6,c=7,d=8,m=2,n=2,执行 (m=a b) do printf(“%2dn“, x-); while( !x ); 程序的执行结果是 ( A)输出 321 (
6、 B)输出 23 ( C)不输出任何内容 ( D)陷入无限循环 18 有以下程序 #include stdio.h main() char c; while( ( c=getchar() )!= n ) switch( c-2 ) case 0 : case 1 : putchar( c+4 ); case 2 : putchar( c+4 ); break; case 3 : putchar( c+3 ); default : putchar( c+2 ); break; printf( “n“ ); 程序运行后从第一列开始输入以下数据 2473回车 程序的输出结果是 ( A) 668977
7、 ( B) 4444 ( C) 6677877 ( D) 68766 19 有以下程序 #include stdio.h main() int i=0, sum=1; do sum += i+ ; while( i 6 ); printf(“%d n“,sum); 程序的输出结果是 ( A) 22 ( B) 18 ( C) 20 ( D) 16 20 有以下程序段,若变量已正确定义并赋值 if(a b)printf(“x=%d,“, x); else printf(“y=%d,“, y); if(a =b)i+; else j+; 则与此程序段功能相同的选项是 ( A) if(a b)prin
8、tf(“x=%d,“, x);j+; else printf(“y=%d,“, y);i+; ( B) if(a b)printf(“x=%d,“, x);i+; else printf(“y=%d,“, y);j+; ( C) if(a =b)printf(“x=%d,“, x);i+; else printf(“y=%d,“, y);j+; ( D) if(a =b)printf(“x=%d,“, x);i+; else printf(“y=%d,“, y);j+; 21 以下程序的功能是判断输入的一个整数是否能被 3或 7整除,若能整除,输出YES,否则输出 NO。在下划线处应填入的选项
9、是 #include stdio.h main() int k; printf(“Enter a int number : “); scanf(“%d“, if _ printf(“YESn“); else printf(“NOn“); printf(“%dn“,k%3); ( A) ( (k%3=0) | (k%7=0) ) ( B) (k/3=0) | (k/7=0) ( C) ( (k%3=0) | (k%7=0) ) ( D) ( (k%3=0) *t=*p; *p=*q; *q=*t; main() int i=10,j=20, *a= swap(a,b); printf(“i=%d
10、 j= %dn“, i,j ); ( B) #include stdio.h void swap( int *p,int *q) int t; t=*p; *p=*q; *q=t; main() int i=10,j=20, *a= swap(a,b); printf(“i=%d j= %dn“, i,j ); ( C) #include stdio.h #include stdlib.h void swap( int *p,int *q) int *t; t=(int *)malloc(sizeof(int); *t=*p; *p=*q; *q=*t; free(t); main() int
11、 i=10,j=20; swap( printf(“i=%d j= %dn“, i,j ); ( D) #include stdio.h void swap( int *p,int *q) int t; t=*p; *p=*q; *q=t; main() int i=10,j=20 , *x= swap(x,y); printf(“i=%d j= %dn“, i,j ); 23 有以下程序 #include stdio.h main() int a10 = 1,3,5,7,11,13,17 , *p=a; printf(“%d,“, *( p+ ); printf(“%dn“, *( +p )
12、; 程序运行后的输出结果是 ( A) 3,7 ( B) 3,5 ( C) 1,5 ( D) 1,3 24 有以下程序 #include stdio.h main() int *p, x=100; p= x=*p+10; printf(“%dn“, x); 程序运行后的输出结果是 ( A) 110 ( B) 120 ( C) 100 ( D) 90 25 以下程序中给数组所有元素输入数据,请从选项中选择正确的答案填入下划线处 #include stdio.h main() int a10, i=0; while( i 10 ) scanf(“%d“, _ ); ( A) a+(i+) ( B)
13、main() int a, b, c; fun(10,5, fun(7,a, fun(a,b, printf(“%d,%d,%dn“, a,b,c ); 程序运行后的输出结果是 ( A) 5,2,3 ( B) -5,-12,-7 ( C) -5,-12,-17 ( D) 5,-2,-7 27 有以下程序 #include stdio.h void fun( int *s, int n1, int n2 ) int i,j,t; i=n1; j=n2; while( i j ) t=*(s+i); *(s+i)=*(s+j); *(s+j)=t; i+; j-; main() int a10 =
14、 1,2,3,4,5,6,7,8,9,0 ,i, *p = a; fun( p,0,3 ); fun( p,4,9 ); fun( p,0,9 ); for( i=0; i 10; i+ )printf(“%d “, *( a+i ) ); printf(“n“ ); 程序运行后的输出结果是 ( A) 5 6 7 8 9 0 1 2 3 4 ( B) 0 9 8 7 6 5 4 3 2 1 ( C) 4 3 2 1 0 9 8 7 6 5 ( D) 0 9 8 7 6 5 1 2 3 4 28 若有定义语句: char str1=“string“,str28,*str3, str410=“st
15、ring“;,库函数strcpy的功能是复制字符串,以下选项中错误的函数调用是 ( A) strcpy(str3, “HELLO!“) ( B) strcpy(str2, “HELLO!“) ( C) strcpy(str1, “HELLO!“) ( D) strcpy(str4, “HELLO!“) 29 当没有指定 C语言中函数形参的存储类别时,函数形参的存储类别是 ( A)外部( extern) ( B)静态 (static) ( C)寄存器 (register) ( D)自动 (auto) 30 以下语句的 输出结果是 printf(“%dn“, strlen(“t“065xffn“)
16、; ( A) 5 ( B) 8 ( C) 14 ( D)输出项不合法,无正常输出 31 若有说明和语句: char str=“Hello“, *p; p=str;,则此时 *(p+5)中的值为 ( A) 0 ( B) o ( C) o的地址 ( D)不确定的值 32 有以下程序 #include stdio.h #include string.h main() char s=“Beijing“; printf(“%dn“, strlen(strcpy( s,“China“) ); 程序运行后的输出结果是 ( A) 5 ( B) 7 ( C) 12 ( D) 14 33 有以下函数 int fu
17、n( char *s, char *t ) while( *s ) return (*s-*t); 函数的功能是 ( A)求字符串的长度 ( B)比较两个字符串的大小 ( C)将字符串 s复制到字符串 t中 ( D)连接字符串 s和字符串 t 34 以下叙述正确的是 ( A) EOF只能作为文本文件的结束标志,其值为 -1 ( B) EOF可以作为所有文件的结束标志 ( C) EOF只能作为二进制文件的结束标志 ( D)任何文件都不能用 EOF作为文件的结束标志 35 以下叙述正确的是 ( A)在 C语言中调用 fopen函数就可把程序中要读、写的文件与磁盘上实际的数据文件联系起来 ( B)
18、fopen函数的调用形式为: fopen(文件名 ) ( C) fopen函数的返回值为 NULL时,则成功打开指定的文件 ( D) fopen函数的返回值必须赋给一个任意类型的指针变量 36 以下不能对文件进行输出的库函数是 ( A) fwrite ( B) fputc ( C) fpout ( D) fprintf 37 有以下程序 #include stdio.h #define N 2 #define M N+1 #define MUN (M+1)*M/2 main() printf( “%dn“, MUN ); 程序运行后的输出结果是 ( A) 8 ( B) 9 ( C) 5 ( D
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 模拟 38 答案 解析 DOC
