[计算机类试卷]国家二级(C语言)笔试模拟试卷229及答案与解析.doc

上传人:lawfemale396 文档编号:503393 上传时间:2018-11-29 格式:DOC 页数:26 大小:74.50KB
下载 相关 举报
[计算机类试卷]国家二级(C语言)笔试模拟试卷229及答案与解析.doc_第1页
第1页 / 共26页
[计算机类试卷]国家二级(C语言)笔试模拟试卷229及答案与解析.doc_第2页
第2页 / 共26页
[计算机类试卷]国家二级(C语言)笔试模拟试卷229及答案与解析.doc_第3页
第3页 / 共26页
[计算机类试卷]国家二级(C语言)笔试模拟试卷229及答案与解析.doc_第4页
第4页 / 共26页
[计算机类试卷]国家二级(C语言)笔试模拟试卷229及答案与解析.doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

1、国家二级( C语言)笔试模拟试卷 229 及答案与解析 1 以下不正确的叙述是 ( A)在 C程序中,逗号运算符的优先级最低 ( B)在 C程序中, APH和 aph是两个不同的变量 ( C)若 a和 b类型相同,在计算了赋值表达式 a=b后 b中的值将放入 a中,而 b中的值不变 ( D)当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值 2 假设线性表的长度为 n,则在最坏情况下,冒泡排序需要的比较次数为 ( A) logn2 ( B) n2 ( C) O(n1.5) ( D) n(n-1)/2 3 下列选项中不属于软件生命周期开发阶段任务的是 ( )。 ( A

2、)软件测试 ( B)概要设计 ( C)软件维护 ( D)详细设计 4 将 E-R图转换到关系模式时 ,实体与联系都可以表示成 ( A)属性 ( B)关系 ( C)键 ( D)域 5 下列叙述中,不属于软件需求规格说明书的作用的是 ( A)便于用户、开发人员进行理解和交流 ( B)反映出用户问题的结构,可以作为软件开发工作的基础和依据 ( C)作为确认测试和验收的依据 ( D)便于开发人员进行需求分析 6 算法的时间复杂度是指 ( A)执行算法程序所需要的时间 ( B)算法程序的长度 ( C)算法执行过程中所需要的基本运算次数 ( D)算法程序中的指令条数 7 下列叙述中正确的是 ( )。 (

3、A)软件交付使用后还需要进行维护 ( B)软件一旦交付使用就不需要再进行维护 ( C)软件交付使用后其生命周期就结束 ( D)软件维护是指修复程序中被破坏的指令 8 某片软盘上已染有病毒,为防止该病毒传染计算机系统,正确的措施是 _。 ( A)删除软盘上的所有文件即删除了病毒 ( B)将该软盘进行 写保护 ( C)将软盘放一段时间后再用 ( D)将该软盘重新格式化 9 在所有排序方法中,关键词比较的次数与记录的初始排列次序无关的是 _。 ( A)希尔排序 ( B)冒泡排序 ( C)插入排序 ( D)选择排序 10 设有下列二叉树: 对此二叉树先序遍历的结果是 ( A) ABCDEF ( B)

4、BDAECF ( C) ABDCEF ( D) DBEFCA 11 若有下列定义 (设 int类型变量占 2个字节 ): int i 8,j 9; 则下列语句: printf(“i %u,j %xn“.i,j); 输出的结果是 ( )。 ( A) i 8,j 9 ( B) 8.9 ( C) 89 ( D) i 8,i 8 12 sizeof(char)是 ( )。 ( A)一种函数调用 ( B)一个整型表达式 ( C)一个字符型表达式 ( D)一个不合法的表达式 13 若变量已正确定义,有以下程序段 int a=3, b=5, c=7; if(a b)a=b; c=a; if(c! =a)c=

5、b; printf(“%d, %d, %dn“, a, b, c); 其输出结果是 ( A)程序段有语法错 ( B) 3, 5, 3 ( C) 3, 5, 5 ( D) 3, 5, 7 14 在数据库设计中,将 E-R图转换成关系数据模型的过程属于 ( )。 ( A)需求分析阶段 ( B)概念设计阶段 ( C)逻辑设计阶段 ( D)物理设计阶段 15 以下选项中不属于字符常量的是 ( A) C ( B) C ( C) xCC ( D) 072 16 下列变量定义中,合法的是 _。 ( A) short_a=1- le-1; ( B) double b=1+5e2.5; ( C) long do

6、=0xfdaL; ( D) float2_and=l-e-3; 17 下列变量说明语句中,正确的是 _。 ( A) char a=b=c; ( B) char a;b;c; ( C) int x;z; ( D) int x,z; 18 下列属于 C语言语句的是 _。 ( A) printf(“%dn“a) ( B) #include stdio.h ( C) a=b;b=c;c=a; ( D) /*this is a program*/ 19 有以下程序: main() int m=3,n=4,x; x;-m+; x=x+8/+n; printf(“%dn“,x); 程序运行后的输出结果是 (

7、 )。 ( A) 3 ( B) 5 ( C) -1 ( D) -2 20 以下各选项企图说明一种新的类型名,其中正确的是 _。 ( A) typedef v1 int ( B) typedef v2=int; ( C) typedef int v3; ( D) typedef v4=int 21 已知 i、 j、 k为 int型变量,若要从键盘输入 2、 3、 4 CR,使 I、 j、 k的值分别为 2、 3、 4,下列正确的输入语句是 ( )。 ( A) scanf(“%3d, %3d, %3d“, ( B) int x=0,y=1,z=0; ( C) if(!A); ( D) if(b=0

8、)m=1;n=2; 23 以下程序段的输出结果为 ( )。 static char a=“programme“; char*p; p=a; for(p=a; p a+8; p+=2) putchar(*p); ( A) programme ( B) porm ( C)有语法错误 ( D) prog 24 下列程序执行输出的结果是 ( )。 #include stdio.h f(int a) int b=0; static c=3; a=C+;b+; return(a); main() int a=2,i,k; for(i=0;i 2;i+) k=f(a+); printf(“%dn“,k);

9、( A) 3 ( B) 4 ( C) 5 ( D) 6 25 有以下程序: void f(int x, int y) int t; if(x y)t=x; x=y; y=t; main() int a=4, b=3, c=5; f(a, b); f(a, c); f(b, c); printf(“ d, d, d n“, a, b, c); 执行后输出结果是 ( )。 ( A) 3, 4, 5 ( B) 5, 3, 4 ( C) 5, 4, 3 ( D) 4, 3, 5 26 标准库函数 fgets(s, n, file)的功能是 ( )。 ( A)从文件 file中读取长度为 n的字符串存入

10、字符数组 s中 ( B)从文件 file中读取长度不超过 n-1个字符的字符串放到字符数组 S中 ( C)从文件 file中读到 n个字符串存入字符数组 s中 ( D)从文件 file中读取长度为 n-1个字符的字符串存入字符数组 s中 27 SQL语言又称为 _。 ( A)结构化定义语言 ( B)结构化控制语言 ( C)结构化查询语言 ( D)结构化操纵语言 28 在深度为 5的满二叉树中,叶子结点的个数为 _。 ( A) 32 ( B) 31 ( C) 16 ( D) 15 29 把算法工作量大小和实现算法所需存储单元多少分别称为算法的 _和空间复杂度。 ( A)可实现性 ( B)时间复杂

11、度 ( C)困难度 ( D)计算有效性 30 程序中若 有如下说明和定义语句 char fun (char*); main() char*s=“one“, a5=0, (*f1)()=fun,ch; 以下选项中对 fun()函数的正确调用语句是 。 ( A) (*f1)(a); ( B) *f1(*s); ( C) fun( ( B) char t=“abcdefg“,*s=t; ( C) char s10; s=“abcdefg“; ( D) char s10;strcpy(s,“abcdefg“); 34 有如下程序段 int a=14,b=15,x; char c=A; x=(a cha

12、r c2; ; void main() union un x; x.c0=10; x.c1=1; printf(“n%d“,x.i); ( A) 266 ( B) 11 ( C) 265 ( D) 138 36 有以下程序 struct s int x,y;data2=10,100,20,200; main() struct s*p=data; printf(“%dn“, +(p- x); 程序运行后的输出结果是 ( A) 10 ( B) 11 ( C) 20 ( D) 21 37 下列程序段中,不是死循环的是 _。 ( A) int i=100; ( B) unsigned k=0; whi

13、le(1) do i=i%100+1; +k if(i =100)break; while(k =0); ( C) for(;); ( D) int s=3379; while(s+%2+s%2)s+; 38 有以下程序: int a=2; int f(int n) static int a=3; int t=0; if(n%2)static int a=4;t+=a+; else static int a=5; t+=a+; return t+a+; main() int s=a, i; for(i=0; i 3; i+) s+=f(i); printf(“%dn“,s); 程序运行后的输出

14、结果是 _。 ( A) 26 ( B) 28 ( C) 29 ( D) 24 39 有以下程序 main() char s=“abcde“; s =2; printf(“%dn“,s0); 执行后的结果是 _。 ( A)输出字符 a的 ASC 码 ( B)输出字符 c的 ASC 码 ( C)输出字符 c ( D)程序出错 40 有以下程序 #include stdio.h int fun(char s) int n=O; while(*s =9 s+; return (n); main() char s10= 6, 1, *, 4, *, 9, *, 0, *; printf(“%dn“,fu

15、n(s); ( A) 9 ( B) 61490 ( C) 61 ( D) 5 41 有以下程序 #include stdio.h void fun(int a, int b) int t; t=a; a=b; int c10=1,2,3,4,5,6,7,8,9,0,i; for(i=0;i 10;i+=2) fun(ci,ci+1); for(i=0;i 10;i+) printf(“%d,“,ci); printf(“n“); 程序的运行结果是 _。 ( A) 1,2,3,4,5,6.7,8,9,0, ( B) 2,1.4.3.6,5.8,7,0,9, ( C) 0,9,8,7,6,5,4,

16、3,2,1, ( D) 0,1,2,3,4,5,6,7,8,9, 41 长度为 n的顺序存储线性表中,当在任何位置上插入一个元素概率都相等时,插入一个元素所需移动元素的平均个数为 _。 42 软件是程序、数据和 _的集合。 43 在深度为 7的满二叉树中,度为 2的结点个数为【 】。 44 按照逻辑结构分类, 结构可以分为线性结构和非线性结构,栈属于 _。 45 的任务是诊断和改正程序中的错误。 46 本程序用冒泡法对数组 a的元素从大到小排序,请在程序空白处填空。 void bubble(int a, int n) intid, max, temp; max=n-1; doj=0; for(

17、i=0; i0 【试题解析】 本题是典型的冒泡排序题,每一次 for循环将从数组 a中找出剩下数中的最大的值放在这些数的最前端,若数组 a中有 n个数,则完成数组排序共需 n-1次循环。令 max=n-1,每 次循环后 i值增 1, imax条件不足,即 n-1次循环后,此时 i=j=max=0,循环结束。 47 【正确答案】 15 【试题解析】 s=f(aa, 5)=f(aa, 4)+a4=f(aa, 3)+a3+a4=f(aa,2)+a2+a3+a4 =f(aa, 1)+a1+a2+a3|a4=0+a0+a1+a2+a3+a4=15。 48 【正确答案】 7 【试题解析】 本题考查英文字母

18、 ASCII 码值的概念。字符参与运算的值是其对应的 ASCII码,字符 H的 ASCII码为 72, A的 ASCII码为 65, 0的 ASCII码为48,所以 a 72-65+48 55, ASCII码值为 55 的字符是 7。 49 【正确答案】 246 50 【正确答案】 消息 【试题解析】 对象之间进行通信的构造叫做消息,它请求对象执行某一处理或回答某一要求的信息,它统一了数据流和控制流。 51 【正确答案】 a=14 【试题解析】 本题考查的是表达式的优先级问题。先计算表达式 3*5=15,再计算 a+4=14,将数据 14赋值给 a,根据 printf( )函 数内的输出格式控

19、制串,最后的输出结果应为 “a=14”。 52 【正确答案】 7 【试题解析】 st函数的参数 a接收 i的地址,局部变量 c的值是奎局变量 k 的地址, *a *c也即是 3 7表达式结果为假所以返回局部变量 C,也即返回 7, 7赋值给 r所以输出结果为 r。 53 【正确答案】 10300 【试题解析】 在 scanf 格式控制符中有一个 “*”附加说明符,表示跳过它指定的列数。程序中 “%d%*d%d“表示首先将 10赋给 i,然后遇 %。 d 读入整数但不赋给任何变量,最后将读人的整数 30赋给变量 j,变量 k 并没有重新赋值,仍为初始值 0。所以输出的结果为 10300。 54

20、【正确答案】 30 25 【试题解析】 本题考核的知识点是变量的存储属性和算术运算的应用。本题涉及了自动变量、静态变量和外部变量。外部变量是定义在所有函数之外的变量,本题中 int a=5定义了一个外部变量 a,它是一个全局变量,即作用域是从定义的位置开始到本文件的结束;静态变量的存储空间在程序的整个运行期间是固定的(static),本题函数 fun()中 static int a=10定义个一个静态变量 a,此静态变量 a是个静态的局部 变量,即它的值只能在本函数中使用; 自动变量是 C程序中使用最多的一种变量,它的建立和撤消都是由系统在程序执行过程中自动进行的, auto是自动变量的存储类

21、别标识符,如果省略 auto,系统隐含认为此变量为 auto,本题中 main()中 int c=20 定义了一个自动变量 c,此自动变量 c是个静态的局部变量算术运算中 a+=b+相当于 a=a+b, b=b+1所以,在第一个 ptine(“ d“, a)中 a=a+b=10+20=30, 第二个 printf(“ d“, a)中 a=a+c=5+20=25,即输出 30 25。 55 【正确答案】 b=i+1 【试题解析】 本题考查了 for循环语句的执行过程。 i+ =2是修正表达式,执行一次循环体后 i的值就增加 2, i的初始值为 0,每次加 2之后和累加至 a,所以 a的值就是 1 10之间的偶数之后; b的值是 1 11 之间的奇数和,但在输出 b值时 c去掉多加的 11,即为 1 10之间的奇数之和。 56 【正确答案】 8 【试题解析】 本题考查基本的 for循环条件, i+=2表示 i每次递增 2,从 0开始,输出 5个整数则需要的条件是 i =8。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1