二级C语言05年4月至08年4月笔试真题及答案(最新修订版)(5)

2019-02-15 22:36

A)0 0 B)123 45 C)1 4 D)1 2 二、填空题(每空2分,共40分)

请将每一个空的正确答案写在答题卡【1】至【20】序号的横线上,答在试卷上不得分。

(1)数据管理技术发展过程经过人工管理、文件系统和数据库系统三个阶段,其中数据独立性最高的

阶段是 【1】 。答案:数据库系统

(2)算法复杂度主要包括时间复杂度和 【2】 复杂度。答案:空间

(3)在进行模块测试时,要为每个被测试的模块另外设计两类模块:驱动模块和承接模块(桩模块)。

其中 【3】 的作用是将测试数据传送给被测试的模块,并显示被测试模块所产生的结果。 答案:驱动模块

(4)一棵二叉树第六层(根结点为第一层)的结点数最多为 【4】 个。答案:32 (5)数据结构分为逻辑结构和存储结构,循环队列属于 【5】 结构。答案:存储结构 (6)以下程序运行后的输出结果是 【6】 。答案:88 main()

{ int x=0210; printf(\ }

(7)以下程序运行后的输出结果是 【7】 。答案:1 main()

{ int a=1,b=2,c=3;

if(c=a) printf(\ else printf(\ }

(8)已有定义:double *p;,请写出完整的语句,利用malloc函数使p指向一个双精度型 态存储单元 【8】 。答案:p=(double * ) malloc (sizeof(double)) (9)以下程序运行后的输出结果是 【9】 。答案:2 20 main()

{ char c; int n=100; float f=10; double x; x=f*=n/=(c=50);

printf(\ }

(10)以下程序的功能是计算:s=1+12+123+1234+12345。请填空。答案:t*10 main()

{ int t=0,s=0,i;

for( i=1; i<=5; i++)

{ t=i+ 【10】 ; s=s+t; } printf(\ }

(11)已知字母A的ASCII码为65。以下程序运行后的输出结果是 【11】 。答案:67 G main()

{ char a, b;

a='A'+'5'-'3'; b=a+'6'-'2' ; printf(\ }

(12)有以下程序

int sub(int n) { return (n/10+n); } main()

{ int x,y;

的动

scanf(\ y=sub(sub(sub(x))); printf(\}

若运行时输入:1234<回车>,程序的输出结果是 【12】 。答案:10

(13)以下函数sstrcat()的功能是实现字符串的连接,即将t所指字符串复制到s所指字符串的尾部。

例如:s所指字符串为abcd,t所指字符串为efgh,函数调用后s所指字符串为abcdefgh。请填空。*t

# include

void sstrcat(char *s, char *t) { int n;

n= strlen(s);

while (*(s+n)= 【13】 ){s++; t++;} }

(14)以下程序运行后的输出结果是 【14】 。答案:bcdefgha #include char *ss(char *s) { char *p, t; p=s+1; t=*s;

while(*p) { *(p-1) = *p; p++;} *(p-1)=t; return s; }

main()

{ char *p, str[10]=\ p = ss(str) ; printf(\ }

(15)以下程序运行后的输出结果是 【15】 。答案:15 int f(int a[], int n)

{ if (n >= 1) return f(a, n-1)+a[n-1]; else return 0; }

main()

{ int aa[5]={1,2,3,4,5}, s;

s=f(aa, 5); printf(\ }

(16)以下程序运行后的输出结果是 【16】 。答案:5 struct NODE

{ int num; struct NODE *next; } ; main()

{ struct NODE s[3]={{1, '\\0'},{2, '\\0'},{3, '\\0'}}, *p, *q, *r; int sum=0;

s[0].next=s+1; s[1].next=s+2; s[2].next=s; p=s; q=p->next; r=q->next;

sum+=q->next->num; sum+=r->next->next->num;

printf(\ }

(17)以下程序的功能是输出如下形式的方阵: 13 14 15 16 9 10 11 12 5 6 7 8 1 2 3 4

请填空。答案:>0和6 main()

{ int i,j,x;

for(j=4; j 【17】 ; j--) { for(i=1; i<=4; i++)

{ x=(j-1)*4 + 【18】 ; printf(\ }

printf(\ } }

(18)以下函数rotate的功能是:将a所指N行N列的二维数组中的最后一行放到b所指二维数组的

第0列中,把a所指二维数组中的第0行放到b所指二维数组的最后一列中,b所指二维数组中其他数据不变。

# define N 4

void rotate(int a[][N], int b[][N]) { int i, j;

for (i=0; i

{ b[i][N-1] = 【19】 ; 【20】 = a[N-1][i]; } }答案:a[0][i]和a[i] [0] 二级C语言2006年4月考试试卷

一、选择题 ((1)~(10)每小题 2 分 ,(11)~(50)每小题 1 分 , 共 60 分) 下列各题 A)、B)、C)、D)四个选项中, 只有一个选项是正确的。 01) 下列选项中不属于结构化程序设计方法的是 A)自顶向下 B)逐步求精 C)模块化 D)可复用 答案:D

02) 两个或两个以上模块之间关联的紧密程度称为 A)耦合度 B)内聚度 C)复杂度 D)数据传输特性 答案:A

03) 下列叙述中正确的是

A)软件测试应该由程序开发者来完成 B)程序经调试后一般不需要再测试 C)软件维护只包括对程序代码的维护 D)以上三种说法都不对 答案:D

04) 按照“后进先出”原则组织数据的数据结构是 A)队列 B)栈 C)双向链表 D)二叉树 答案:B

05) 下列叙述中正确的是

A)线性链表是线性表的链式存储结构 B)栈与队列是非线性结构 C)双向链表是非线性结构 D)只有根结点的二叉树是线性结构 答案:A

06)

A)ABCDEF B)DBEAFC C)ABDECF D)DEBFCA 答案:D

07) 在深度为7的满二叉树中,叶子结点的个数为 A)32 B)31 C)64 D)63 答案:C

08) “商品”与“顾客”两个实体集之间的联系一般是 A)一对一 B)一对多 C)多对一 D)多对多 答案:D

09) 在E-R图中,用来表示实体的图形是 A)矩形 B)椭圆形 C)菱形 D)三角 答案:A

10) 数据库DB、数据库系统DBS、数据库管理系统DBMS之间的关系是

A)DB包含DBS和DBMS B)DBMS包含DB和DBS C)DBS包含DB和DBMS D)没有任何关系 答案:C

11) 以下不合法的用户标识符是

A)j2_KEY B)Double C)4d D)_8_ 答案:C

12) 以下不合法的数值常量是

A)011 B)1e1 C)8.0E0.5 D)0xabed 答案:C

13) 以下不合法的字符常量是

A)'\\018' B)'\\\ 答案:A

14) 表达式3.6-5/2+1.2+5%2的值是 A)4.3 B)4.8 C)3.3 D)3.8 答案:D

15) 以下能正确定义字符串的语句是

A)char str[]={'\\064'}; B)char str=\ 答案:D

16) 以下数组定义中错误的是

A)int x[][3]={0}; B)int x[2][3]={{1,2},{3,4},{5,6}};

C)int x[][3]={{1,2,3},{4,5,6}}; D)int x[2][3]={1,2,3,4,5,6}; 答案:B

17) 若要求从键盘读入含有空格字符的字符串,应使用函数 A)getc() B)gets() C)getchar() D)scanf() 答案:B

18) 以下四个程序中,完全正确的是 A)#include main();

{/*programming */

printf(\ B)#include main()

{/*/programming/*/

printf(\ C)#include main()

{/*/*programming */*/

printf(\ D)include main()

{/*programming*/

printf(\ 答案:B

19) 若有定义:float x=1.5; int a=1,b=3,c=2; 则正确的switch语句是 A)switch(x)

{case 1.0: printf(\ case 2.0: printf(\ B)switch((int)x);

{case l: printf(\ case 2: printf(\ C)switch(a+b)

{case 1: printf(\ case 2+1: printf{\ D)switch(a+b)

{case1: printf(\ case c: printf(\ 答案:C

20) 若各选项中所用变量己正确定义,函数fun中通过retuen语句返回一个函数值,以下选项中错误的程序是 A)main()

{ ?? x=fun(2,10); ??} float fun(int a,int b){??} B)float fun(int a,int b){??} main()

{ ?? x=fun(i,j); ??} C)float fun(int,int); main()

{ ?? x=fun(2,10); ??} float fun(int a,int b){??} D)main()

{float fun(int i,int j); ?? x=fun(i,j); ??}


二级C语言05年4月至08年4月笔试真题及答案(最新修订版)(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:四年级数学思维训练题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: