hi.http://m.diyifanwen.net//liuzhiqianghome
2012年3月全国计算机等级考试二级C语言真题
{int k=5,j=2;
printf(“%d,”,S[k+j]); printf(“%d\\n”,S(k-j))); }
程序运行输出结果是
A 98,18 B 39,11 C39,18 D98,11 36、有以下函数 #include
{t[0]=t[5];}
{int x[10]={1,2,3,4,5,6,7,8,9,10},i=0; While(i<=4) {exch(&x[i])’i++;}
for(i=0;i<5;i++) printf(“%d”,x[i]); printf(“\\n”);
}
程序运行输出结果是
A 2 4 6 8 10 B 1 3 5 7 9 C 1 2 3 4 5 D 6 7 8 9 10 37、设有以下程序段 Struct MP3 {char name[20]; Char color; Float price; }std,*ptr;
ptr=& std;
若要引用结构体变量std中的color成员,写法错误的是
A std.color B ptr-> color C std-> color D (*ptr) .color 38、有以下函数 #include
{int mun; char name[10]; int age;}; viod fun(struct stu *p)
{ printf(“%s\\n”,p->name);} mian()
{ struct stu x[3]={{01,”zhang”,20},{02,”wang”,19},{03,”zhao”,18}}; fun(x+2); }
程序运行输出结果是
A zhang B zhao C wang D 19 39、有以下函数 #include
hi.http://m.diyifanwen.net//liuzhiqianghome
2012年3月全国计算机等级考试二级C语言真题
程序运行输出结果是
A 3 B 50 C 2 D 96
40、以下函数不能用于向文件写入数据的是
A ftell B fwrite C fputc D fprintf
二、填空题
1、将长度为n的顺序存储在线性表中删除一个元素,最坏情况下需要移动表中的元素个数为( )。
2、设循环队列的存储空间为Q(1:3),初始状态为front=rear=30。现经过一系列入队与退队运算后,front=16,rear=15,则循环队列中有( )个元素。
3、数据库管理系统提供的数据语言中,负责数据的增、删、改和查询的是( )。 4、在将E-R图转换到关系模式时,实体和联系都可以表示成( )。
5、常见的软件工程方法有结构化方法和面向对象方法,类、继承以及多态性等概念属于( )。
6、设变量a和b已定义为int类型,若要通过scanf(”a=%d,b=%d”,&a,&b);语句分别给a和b输入1和2,则正确的数据输入内容是( )。 7、以下程序的输出结果是( )。 #include
a+=a%=9; printf(“%d\\n”,a);
}
8、设a、b、c都是整型变量,如果a的值为1,b的值为2,则执行c=a++||b++;语句后,变量b的值是( ). 9、有以下程序段
s=1.0;
for(k=1,k<=n;k++) s=s+1.0(k*(k+1));
printf(“%f\\n”,s);
请填空,使以下程序段的功能与上面的程序段完全相同。 s=1.0; k=1; while( )
{ s=s+1.0(k*(k+1)); k=k+1;}
printf(“%f\\n”,s);
10、以下程序段的输出结果是( ) #include
{ char a,b;
for(a=0;a<20;a+=7) { b=a; putchar(b+’0’); } }
11、以下程序段的输出结果是( ) #include
hi.http://m.diyifanwen.net//liuzhiqianghome
2012年3月全国计算机等级考试二级C语言真题
mian()
{ char *ch[4]={“red”,”green”,”blue”}; Int i=0; While(ch[i]);
{ putchar(ch[i][0]; i++; } }
12、
有以下程序
#include
{int arr[]={1,3,5,7,2,4,6,8{, i, start; Scanf(“%d”, &start); For(i=0,i<3,i++)
printf(“%d”,arr[(start+i)%8]); }
若在程序运行时输入整数10 <回车>,则输出结果为( )。
13、 以下程序的功能是输出a数组中的所有字符串,请填空 #include
mian()
{char *a[]={“ABC”,”DEFGH”,”IJ”,”KLMNOP”}; Int i=0;
For(;i<4;i++) printf(“%s\\n”, ); }
14、以下程序的输出结果是( )。 #include
{ char *p, *q, *r;
p=q=r=(char *)malloc(sizeof(char)*20); strcpy(p,”attaboy,welcome!”); printf(“%c%c%c\\n”,p[11], q[3], r[4]); free(p);
}
15、设文件test.txt中原已写入字符串Begin,执行以下程序后,文件中的内容为( )。 #include
fp=fopen(“test.txt”,”w+”); fputs(“test”,fp);
hi.http://m.diyifanwen.net//liuzhiqianghome
2012年3月全国计算机等级考试二级C语言真题
fclose(fp); }
(1)【答案】A
【解析】为了充分利用存储空间,可以把顺序队列看成一个环状空间,即把顺序队列的头尾指针相连,这样的队列称之为循环队列。它是对顺序队列的改进,故循环队列是队列的一种顺序存储结构 (2)【D】
【解析】栈是一种后进先出的线性表,队列是一种先进先出的线性表,二者均是线性结构,故选项A)、B)、C)均不对,答案为选项D)。 (3)【D】
【解析】由二叉树的性质n0=n2+1可知,度为0的结点数(即叶子结点数)=度为2的结点数+1,根据题意得知,度为2的结点数为4个,那么25-5-4=16即为度为1的结点数,选项D)正确 (4)、【答案】A
【解析】内模式也称存储模式,它是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式,对应于物理级,它是数据库中全体数据的内部表示或底层描述,是数据库最低一级的逻辑描述。所以选项A)正确。 (5)【答案】D
【解析】在关系R中如记录完全函数依赖于属性(组)X,则称X为关系R中的一个候选关键字。在一个关系中,候选关键字可以有多个且在任何关系中至少有一个关键字。所以在满足数据完整性约束的条件下,一个关系应该有一个或多个候选关键字,所以选项D)正确。 (6)【答案】C
hi.http://m.diyifanwen.net//liuzhiqianghome
2012年3月全国计算机等级考试二级C语言真题
【解析】R和S的差是由属于R但不属于S的元组组成的集合,运算符为“-”。记为T=R-S。根据本题关系R和关系S运算前后的变化,可以看出此处进行的是关系运算的差运算 (7)【答案】B
【解析】通常把软件产品从提出、实现、使用、维护到停止使用(退役)的过程称为软件生命周期。可以将软件生命周期分为软件定义、软件开发及软件运行维护三个阶段。软件生命周期的主要活动阶段是可行性研究与计划制定、需求分析、软件设计、软件实现、软件测试、运行和维护。软件生命周期不包括市场调研。 (8)【答案】C
【解析】需求分析是对待开发软件提出的需求进行分析并给出详细的定义。主要工作是编写软件需求规格说明书及用户手册。需求分析的任务是导出目标系统的逻辑模型,解决“做什么”的问题。制定软件集成测试计划是软件设计阶段需要完成的任务
(9)【答案】A
【解析】黑盒测试也称功能测试或数据驱动测试,设计测试用例着眼于程序外部结构、不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。 (10)【答案】D
【解析】软件设计包括概要设计和详细设计,软件概要设计中,面向数据流的设计方法有变换型系统结构图和事务型数据流两种。软件详细设计,程序流程图(PDF)和PAD(问题分析图)是过程设计的常用工具。数据流图(DFD图)是软件定义阶段结构化分析方法常用的工具。 (11)【答案】A)
【解析】简单程序设计的步骤是首先要确定算法和数据结构,然胡编码、调试,最后整理相关文档。
2012年3月计算机二级C语言笔试真题文字word版+详细答案解析



