[计算机类试卷]国家二级(C语言)笔试模拟试卷145及答案与解析.doc
《[计算机类试卷]国家二级(C语言)笔试模拟试卷145及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C语言)笔试模拟试卷145及答案与解析.doc(26页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C语言)笔试模拟试卷 145及答案与解析 1 算法的空间复杂度是指 ( )。 ( A)算法程序的长度 ( B)算法程序中的指令条数 ( C)算法程序所占的存储空间 ( D)算法执行过程中所需要的存储空间 2 数据的存储结构是指 ( )。 ( A)数据所占的存储空间 ( B)数据的逻辑结构在计算机的存放形式 ( C)数据在计算机中的顺序存储方式 ( D)存储在计算机外存中的数据 3 有下列二叉树,对此二叉树前序遍历的结果为 ( )。 ( A) ACFHIBEDG ( B) ABCDEFGHI ( C) ABDEGCFHI ( D) ABCDEFHGI 4 下列描述中正确的是 ( )。
2、 ( A)程序就是软件 ( B)软件开发不受计算机系统的限制 ( C)软件既是逻辑实体,又是物理实体 ( D)软件是程序、数据和相关文档的集合 5 两个或两个以上模块之间联系的紧密程度称为 ( )。 ( A)耦合 ( B)内聚性 ( C)复杂性 ( D)数据传输特性 6 数据库技术的根本目标是要解决数据的 ( )。 ( A)存储问题 ( B)共享问题 ( C)安全问题 ( D)保护问题 7 下列不属于软件工程的 3个要素的是 ( )。 ( A)工具 ( B)过程 ( C)方法 ( D)环境 8 关系数据库管理系统能实现的专门关系运算包括 ( )。 ( A)排序、索引、统计 ( B)选择、投影、
3、连接 ( C)关联、更新、排序 ( D)显示、打印、制表 9 将 E-R图转换到关系模式时,实体与实体间的联系可以表示成 ( )。 ( A)属性 ( B)关系 ( C)键 ( D)域 10 设计数据库的存储结构属于 ( )。 ( A)需求分析 ( B)概念设计 ( C)逻辑设计 ( D)物理设计 11 下列说法不正确的是 ( )。 ( A) C程序是以函数为基本单位的,整个程序由函数组成 ( B) C语言程序的一条语句可以写在不同的行上 ( C) C程序的注释行对程序的运行功能不起任何作用,所以注释应该尽可能少写 ( D) C程序的每个语句都以分号结束 12 下列标识符不是关键字的是 ( )。
4、 ( A) break ( B) char ( C) Switch ( D) return 13 下列程序的执行结果是 ( )。 #include stdio.h main() inta,b,c; a=b=2; c=(a+)-1;printf(“%d,%d“,a,c) ; c+=-a+(+b) ;printf(“%d,%d“,a,c) ; ( A) 3,1 4,1 ( B) 3,1 4,2 ( C) 2,04,1 ( D) 2,1 4,1 14 下列选项中不合法的 +六进制数是 ( )。 ( A) Oxff ( B) OXll ( C) Oxlg ( D) OXabc 15 若 w、 x、 y
5、、 z、 m均为 int型变量,则执行下列的语 句后 m的值是 ( )。 w=2,x=3,y=4,z=5; m=(w x)?W:x: m=(m z)?m:Z; m=(m y)?m:y; ( A) 2 ( B) 3 ( C) 5 ( D) 4 16 已知 i、 j、 k为 int型变量,若要从键盘输入 2、 3、 4 CR,使 i、 j、 k的值分别为 2、 3、 4,下列正确的输入语句是 ( )。 ( A) scanf(“%3d,%3d,%3d“, ( B) scanf(“%d,%d,%d“, ( C) scanf(“%d%d%d“, ( D) scanf(“i=%d,j=%d,k=%d“,
6、17 语句 “printf(“abhowareyboun“);”的输出结果是 ( )。 ( A) abhowareybou ( B) abhowareybou ( C) howareyou ( D) ahowareybou 18 下列程序的运行结果是 ( )。 main() int a=-5,b=1,c=1; int x=0,y=2,z=0; if(c 0) x=x+y; if(a =0) if(b 0) if(c =0) y=x-y; else if(c 0) y=x-y; else z=y; printf(“%d,%d,%dn“,x,y,z); ( A) 2,2,0 ( B) 2,2,2
7、( C) 0,2,0 ( D) 2,0,2 19 两次运行下列的程序,如果从键盘上分别输入 3和 1,则输出结果是 ( )。 main() int x; scanf(“%d“, if(x+ 2) printf(“%d“,x); else printf(“%dn“,x-); ( A) 4和 2 ( B) 4和 1 ( C) 4和 0 ( D) 3和 1 20 下列 4个关于 C语言的结论中错误的是 ( )。 ( A)可以用 dowhile 语句实现的循环一定可以用 while语句实现 ( B)可以用 for语句实现的循环一定可以用 while语句实现 ( C)可以用 while语句实现的循环一定
8、可以用 for语句实现 ( D) dowhile 语句与 while语句的区别仅是关键字 “while”出现的位置不同 21 若变量已正确定义,下列正确的程序段是 ( )。 ( A) while(ch=getchar()=N)putchar(ch); ( B) while(ch=getchar()=n)putchar(ch); ( C) while(ch=getchar()!=N)putchar(ch); ( D) while(ch=getchar()!=n)putchar(ch); 22 有下列函数 定义: int fun(double a,double B) return a*b; 若下列
9、选项中所用变量都已正确定义并赋值,错误的函数调用是 ( )。 ( A) if(fun(x,y) ( B) z=fun(fun(x,y),fun(x,y); ( C) z=fun(fun(x,y)x,y); ( D) fun(x,y); 23 下列程序的输出结果是 ( )。 #include stdio.h int fun(int x) int a; if(x=0x=1) return 3; else a=x-fun(x-2) ; return a; void main() printf(“%d“,fun(7) ); ( A) 2 ( B) 8 ( C) 9 ( D) 5 24 下列程序段的运行
10、结果是 ( )。 #include stdio.h void main() char str=“ABC“,*p=str; printf(“%dn“,*(p+3) ); ( A) 67 ( B) 0 ( C)字符 C的地址 ( D)字符 C 25 设有下列定义: struct sk int m; float x; data,*q; 若要使 q指向 data中的 m域,正确的赋值语句是 ( )。 ( A) q= ( B) *q=data.m; ( C) q=(struct sk*) ( D) q=(struct sk*)data.m; 26 若有说明 int a3=0,0;,则不正确的叙述是 (
11、)。 ( A)数组 a的每个元素的初值都是 0 ( B)数组 a的第一维大小为 1 ( C)数组 a的行数为 1 ( D)只有元素 a00和 a01可得到初值 0,其余元素均得不到初值 0 27 下列叙述中正确的是 ( )。 ( A) break语句只能用于 switch语句体中 ( B) continue语句的作用是使程序的执行流程跳出包含它的所有循环 ( C) break语句只能用在循环体内和 switch语句体内 ( D)在循环体内使用 break语句和 continue语句的作用 相同 28 下列合法的字符型常量是 ( )。 ( A) x13 ( B) 081 ( C) 65 ( D)
12、 n 29 在 C语言中,函数返回值的类型最终取决于 ( )。 ( A)函数定义时在函数首部所说明的函数类型 ( B) return语句中表达式值的类型 ( C)调用函数时主调函数所传递的实参类型 ( D)函数定义时形参的类型 30 下列二维数组初始化语句中,不正确的是 ( )。 ( A) int b2=1,2,3,4,5,6,7; ( B) int b35=0,0,0; ( C) int b4=1,2,3,4,5,6; ( D) int b32=(1,2),(3,4) ,(5,6); 31 判断字符串 s1是否大于字符串 s2,应该使用 ( )。 ( A) if(strcmp(s1,s2)
13、0) ( B) if(s1 s2) ( C) if(strcmp(s2,s1) 0) ( D) if(strcmp(s1,s2) 32 下列程序的运行结果是 ( )。 #include stdio.h #include string.h main() char*s1=“abDuj“; char*s2=“ABdUG“; int t; t=strcmp(s1,s2) ; printf(“%d“,t); ( A)正数 ( B)负数 ( C)零 ( D)不确定的值 33 已知大写字母 A的 ASCII码是 65,小写字母 a的 ASCII码是 97。下列不能将变量 c中的大写字母转换为对应小写字母的语
14、句是 ( )。 ( A) c=(c-A)%26+a ( B) c=c+32 ( C) c=c-A+a ( D) c=(A+C) %26-a 34 有下列函数: int fun(char*S) char*t=s; while(*t+ +); return(t-s); 该函数的功能是 ( )。 ( A)比较两个字符串的大小 ( B)计算 s所指字符串占用内存字节的个数 ( C)计算 s所指字符串的长度 ( D)将 s所指字符串复制到字符串 t中 35 下列程序的运行结果是 ( )。 #include stdio.h voidfun(int*s,int*p) static int t=3; *p=s
15、t; t-; void main() int a=2,3,4,5,k; int x; for(k=0;k 4;k+) fun(a, printf(“%d,“,x); ( A) 5,4,3,2 ( B) 2,3,4,5, ( C) 2,2,2,2, ( D) 5,5,5,5, 36 下列程序段 的输出结果为 ( )。 #include stdio.h main() static char a=“language“; char*p; p=a; for(p=a;p a+8;p+=2) putchar(*p); ( A) language ( B) lnug ( C)有语法错误 ( D) lang 3
16、7 #define能作简单的替代,用宏来替代计算多项式 5*x*x+5*x+5的值的函数 f,正确的宏定义语句为 ( )。 ( A) #define f(x)5*x*x+5*x+5 ( B) #define f5*x*x+5*x+5 ( C) #define f(A) (5*a*a+5*a+5) ( D) #define(5*x*x+5*x+5) f(x) 38 下列程序的输出结果是 ( )。 #include stdio.h main() stmct st int y,x,z; ; union long i; int j; char k; un; printf(“%d,%dn“,sizeof
17、(stmct st),sizeof(un); ( A) 6,2 ( B) 6,4 ( C) 8,4 ( D) 8,6 39 下列程序中 c的二进制值是 ( )。 char a=2,b=4,C; c=ab 2; ( A) 00000011 ( B) 00010100 ( C) 00011100 ( D) 00011000 40 标准库函数 fgets(s,n,file)的功能是 ( )。 ( A)从文件 file中读取长度为 n的字符串存入字符数 组 s中 ( B)从文件 file中读取长度不超过 n-1个字符的字符串放到字符数组 s中 ( C)从文件 file中读取 n个字符串存入字符数组 s
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 笔试 模拟 145 答案 解析 DOC
