2012年3月全国计算机等级考试C语言真题

合集下载

2012年3月计算机等级考试二级c语言真题

2012年3月计算机等级考试二级c语言真题

教育城(/)是一个专门提供计算机类、外语类、资格类、学历类,会计类、建筑类、医学 类等教育信息服务。 2012 年 3 月计算机等级考试试题及答案汇总
/ckl/教育城会计网更多学习资料
教育城(/)是一个专门提供计算机类、外语类、资格类、学历类,会计类、建筑类、医学 类等教育信息服务。
教育城 计算机等级考试交流 QQ 群:184458132
2012 年 03 月计算机二级考试试题及答案汇总
2012 年 3 月计算机等级考试试题及答案汇总
/ckl/教育城会计网更多学习资料
/ckl/教育城会计网更多学习资料
教育城(/)是一个专门提供计算机类、外语类、资格类、学历类,会计类、建筑类、城会计网更多学习资料
教育城(/)是一个专门提供计算机类、外语类、资格类、学历类,会计类、建筑类、医学 类等教育信息服务。
/ckl/教育城会计网更多学习资料
教育城(/)是一个专门提供计算机类、外语类、资格类、学历类,会计类、建筑类、医学 类等教育信息服务。
/ckl/教育城会计网更多学习资料
教育城(/)是一个专门提供计算机类、外语类、资格类、学历类,会计类、建筑类、医学 类等教育信息服务。
/ckl/教育城会计网更多学习资料
教育城(/)是一个专门提供计算机类、外语类、资格类、学历类,会计类、建筑类、医学 类等教育信息服务。
/ckl/教育城会计网更多学习资料
教育城(/)是一个专门提供计算机类、外语类、资格类、学历类,会计类、建筑类、医学 类等教育信息服务。
/ckl/教育城会计网更多学习资料
教育城(/)是一个专门提供计算机类、外语类、资格类、学历类,会计类、建筑类、医学 类等教育信息服务。
/ckl/教育城会计网更多学习资料

2012计算机二级C笔试真题及答案

2012计算机二级C笔试真题及答案

全国计算机等级考试二级C语言2012年3月试题及答案一、填空题1、C语言中基本的数据类型有:__________、__________、__________。

2、C语言中普通整型变量的类型说明符为__________,在内存中占__________字节,有符号普通整型的数据范围是__________。

3、整数-35在机内的补码表示为__________。

4、执行下列语句int a=8;a+=a-=a*a;后,a的值是__________。

5、有如下语句:char A[]={”I am a student”};该字符串的长度是__________,A[3]=__________。

6、符号”a”和’a’的区别是__________。

7、所谓“指针”就是__________。

“&”运算符的作用是__________。

“*”运算符的作用是__________。

8、有如下输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式应是__________。

二、选择题1、设整型变量a为5,使b不为2的表达式是()。

A.b=a/2B.b=6-(--a)C.b=a%2D.b=a>3?2:12、为了避免嵌套的条件分支语句if-else的二义性,C语言规定:C程序中的else总是与()组成配对关系。

A.缩排位置相同的ifB.在其之前未配对的ifC.在其之前未配对的最近的ifD.同一行上的if3、以下程序的输出结果是()。

int x=10,y=10;printf(“%d%d\n”,x--,--y);A.1010B.99C.910D.1094、设A为存放(短)整型的一维数组,如果A的首地址为P,那么A中第i个元素的地址为()。

A.P+i*2B.P+(i-1)*2C.P+(i-1)D.P+i5、选出下列标识符中不是合法的标识符的是()。

2012年3月计算机二级C语言上机题库及答案(破译版)

2012年3月计算机二级C语言上机题库及答案(破译版)

2012年3月计算机二级c语言上机题库内部资料,切勿外传!.第1套填空题请补充FUN函数,FUN函数的功能是求10的阶乘。

注意:部分源程序给出如下。

请勿改动主函数main和其他函数中的任何内容,仅在fun函数的横线上填入所编写的若干表达式或语句。

试题程序:#include <stdio.h>long fun(int n){if (___1___)return (n*fun(___2___));return ___3___;}main(){p rintf("10!=%ld\n", fun(10));}第1处填空:n>1或1<n第2处填空:n-1第3处填空:1或11或1L改错题下列给定程序的功能是:读入一个整数K(2〈=K〈=10000),打印它的所有因子(即所有为素数的因子)。

例如,若输入整数2310,则应输出:2、3、5、7、11。

请改正程序中的错误,使程序能得出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!试题程序:#include <conio.h>#include <stdio.h>/********found********/IsPrime(int n);{int i, m;m = 1;/********found********/for (i=2; i<n; i++)if !(n%i){m = 0;break;}return(m);}main(){int j, k;printf("\nplease enter an integer number between 2 and 10000:");scanf("%d", &k);printf("\n\nThe prime factor(s) of %d is(are):", k);for (j=2; j<k; j++)if ((!(k%j)) && (IsPrime(j)))printf(" %4d,", j);printf("\n");}第1处:Isprime(int n);应改为Isprime(int n)第2处:if !(n%i)应该为if(!(n%i))编程题M个人的成绩存放在score数组中,请编写函数fun,它的功能是:返回低于平均分的认输,并将低于平均分的分数放在below所指的数组中。

2012年3月全国计算机等级考试二级C语言笔试试卷与答案(花卷)1

2012年3月全国计算机等级考试二级C语言笔试试卷与答案(花卷)1

C语言程序设计2012年3月全国计算机等级考试二级笔试试卷第一题在后面二、填空题(每空2分,共30分)请将每空的正确答案写在答题卡【1】至【15】序号的横线上,答在试卷上不得分。

(1)在长度为n的顺序存储的线性表中删除一个元素,最坏情况下需要移动表中的元素个数为【1】。

(2)设循环队列的存储空间为Q(1:30),初始状态为front=rear=30。

现经过一系列入队与退队运算后,front=16,rear=15,则循环队列中有【2】个元素。

(3)数据库管理系统提供的数据语言中,负责数据的增、删、改和查询的是【3】。

(4)在将E-R图转换到关系模式时,实体和联系都可以表示成【4】。

(5)常见的软件工程方法有结构化方法和面向对象方法,类、继承以及多态性等概念属于【5】。

(6)变量a和b已定义为int类型,若要通过scanf("a=%d,b=%d",&a,&b); 语句分别给a和b输入1和2,则正确的数据输入内容是【6】。

(7)以下程序的输出结果是【7】。

# include <stdio.h>main( ){ int a=37;a+=a%=9; printf(%d\n”,a);}(8)设a、b、c都是整型变量,如果a的值为1,b的值为2,则执行c=a++||b++; 语句后,变量b的值是【8】。

(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 ( 【9】){ s=s+1.0/(k*(k+1)); k=k+1; }printf("%f\n", s);(10)以下程序的输入结果是【10】。

# include <stdio.h>main( ){ char a,b;for (a=0; a<20; a+=7) { b=a%10; putchar(b+'0'); }}(11)以下程序的输出结果是。

2012年3月计算机二级c语言机试题库 真题

2012年3月计算机二级c语言机试题库 真题
第一套
1. 程序填空
给定程序中,函数fun的功能是:将形参n所指变量中,各位上为偶数的数去除,剩余的数按原来从高位到低位的顺序组成一个新的数,并通过形参指针n传回所指变量。如输入一个数:27638496,新的数为729
第一空:{ t=*n%10;
第二空:if(t%2!=0)
第三空:*n=x;
for(i=0;i<2;i++){
/*****found******/
m=i;
for(k=i+1;k<n;k++)
/*****found******/
if(a[k]>a[m])m=k;
t=a[i];a[i]=a[m];a[m]=t;
}
}
3.程序设计
请编写一个unsigned fun(unsigned w),w是一个大于10的无符号整数,若w是n(n>=2)位的整数,函数求出w的后nr s[ ],int n)
{
char a[80],*p;
int i;
/*****found******/
p=s;
for(i=0;i<n;i++)
a[i]=’*’;
do
{a[i]=*p;
i++;
}
/*****found******/
while(*p++)
}
第八套
1. 程序填空
给定程序通过定义并赋值的方式,利用结构体变量存储了一名学生学号、姓名和3门课的成绩。函数fun的功能是将该学生的各科成绩都乘以一个系统a。
第1处 void modify(STU *ss,float a )

2012年3月全国计算机等级考试二级C语言上机考试题库及答案_已缩印(最新版来自机房题库) - 副本

2012年3月全国计算机等级考试二级C语言上机考试题库及答案_已缩印(最新版来自机房题库) - 副本

第1套一、填空给定函数的功能是调用fun函数建立班级通讯录。

通讯录记录每位学生的编号,姓名和电话号码。

班级的人数和学生的信息从键盘读入,每个人的信息作为一个数据块写到名为答案yfile5.dat的二进制文件中。

答案:1. STYPE 2. FILE 3. fp二、修改先将在字符串s中的字符按正序存放到t 串中,然后把s中的字符按逆序连接到t 串后面。

答案:1. for(i = 0 ; i < sl ; i++) 2. t[2*sl] =` 0`;三、程序将两个两位数的正整数a,答案合并成一个整数放在c中。

合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,答案数的十位和个位数依次放在c数的百位和个位上。

*c=(a/10)*1000+(b/10)*100+(a%10)*10 +(b%10);第2套一、从键盘输入若干行文本(每行不超过80个字符),写到文件答案yfile4.txt中,用-1作为字符串输入结束的标记。

然后将文件的内容读出显示在屏幕上。

文件的读写分别有自定义函数ReadText和WriteText实现。

答案:*fw str str二、从低位开始取出长整形变量s中的奇数位上的数,依次构成一个新数放在t 中,高位仍放在高位,低位仍放在低位。

答案:long *t sl = sl*10;三、将两个两位数的正整数a,答案合并成一个整数放在c中。

合并的方式:将a 数的十位和个位数依次放在c数的千位和十位上,答案数的十位和个位数依次放在c数的百位和个位上。

*c=(b/10)*1000+(a%10)*100+(b%10)*10 +(a/10);第3套一、将自然数1~10以及它们的平方根写到名为答案yfile3txt的文本文档中,然后再顺序读出显示在屏幕上。

答案:(1)fp (2)fclose(fp) (3)fname 二、将n个无序整数从小到大排序。

答案:for(i=j+1;i<n;i++) p=i;三、将两个两位数的正整数a,答案合并成一个整数放在c中。

2012年3月全国计算机二级C语音上机50套真题答案

2012年3月全国计算机二级C语音上机50套真题答案

2012年3月全国计算机二级C语音上机50套真题答案说明:主要找你的填空题第一道题的题干,然后后面的答案都是相对应一套一套的,如:假如你的填空题第8道题的题干和这里的第8套是一样的,那你所有题(改错、程序设计)的答案都是相对应的第8题,其他类推。

程序设计题加粗字为需输入的答案。

一、程序填空题1. t = __1__; t *= (-1.0)*x/_2__;while (_3_ >= 1e-6);2. switch(__1__) case 1: c1++; __2_;case 2: c2++; ___3___;3. if(t%2==__1__) x=__2__+t; n=__3__;4. rmax=a[i][j]; c= __1__ ; find= __2__ ;/**********found**********/__3__ ;5. void fun(char (*ss) __1__, int k)while(i< __2__) ss[i][k]=__3__;6. void fun(int (*t)___1___ )___2___ =t[i][j]+t[j][i];___3___ =0;7. int __1__ i < __2__ a[0][i] = __3__8. while(t<=__1__) s2=(__2__)%10;if(s1+s2+s3==__3__)9. /**********found**********/___1___; sum+=___2___sum+= t[i][n-i-___3___]10. __1__fun(char ch)if (ch>='0' && ___2___)return '9'- (ch-___3___)11. i=__1__; __2__;x=(2.0*i-1)/((__3__)*(2.0*i));12. while (!feof(__1__)) if (n.sno__2__sno)fseek(__3__, -(long)sizeof(STU)13. for(i=0; i< __1__ ; i++)if( strstr(ss[i], __2__) != NULL )if(find==__3__)printf("\nDon't found!\n"); 14. for(p=1; p<= __1__; p++)for(j=0; j< __2__ ; j++)a[i][N-1]= __3__;15. t = (a>b) ? (b>c? b :(a>c?c:___1___)) :((a>c)?___2___ : ((b>c)?c:___3___)); 16. if ((ch>='a')___1___(ch<='z'))return ch +'a'-___2___ return ___3___ 17. sum+= *s- __1_ __2__; return __3__ 18.f = __1__; t *= (__2__)*x/i f += __3__;19. if(n>=len) strcpy(__1__); t[j++]= __2__ ;t[j]= __3__ ;20. __1__ fun(struct student *a) __2__ += 1; return __3__ ; 21. max = min = ___1___; if (max<___2___)if (min>___3___)22. void fun(int ___1___ , int n)for(___2___; i++) t[i][n-1-i]=___3___;23. void fun(int ___1___, int n)for (i=0; ifor (j=___3___; j<="" p="">24. f = 1.0+___1___; t *= x/___2___;f += ___3___;25. t = ___1___; for (i=___2___; i<="" p="">t *= x/___3___;26. b__1__ = 10004; strcpy(b__2__, "LiJie");fun(__3__);27. k=__1__; t=__2__; k=k*__3__;28. s=__1__; for(i=1; i<=__2__; i++)s=s+(2.0*i-1)*(2.0*i+1)/__3__;29. ch=tolower(__1__); k[n]+= __2__ ;if(max<="" bdsfid="121" max="__3__" p="">30. __1__ t; for (i=0; i<__2__; i++)if (strcmp(__3__) > 0)31. if (___1___== 0) __2__ = a[i];return ___3___;32. t=*n % __1__; if(t%2!= __2__) *n=__3__;33. for(i=0; i< __1__ ; i++)if(len<= __2__) strcpy(ss[j++],__3__);34. __1__ ; flag=1; if (*s==' ') flag=__2__ ; __3__ ;35. t[j]=__1__; j++; for(i=0; i<__2__; i++)t[j+k]= __3__;36. for(i=0; i< __1__ ; i++) return __2__ ;if(n== __3__)37. lp= __1__ ; lp++; rp _2__ ; if(lp<="" __3__="" bdsfid="136" p="">38. x=__1__/4; while(x __2__ e) x=__3__/(t*t);39. for (i=0; i<___1___; i++)a[i] = a[n-1-___2___]; ___3___ = t;40. b = __1__; strcpy(__2__, "LiSi");printf("%6.2f ", b.__3__);41. for (___1___; j<="" p="">if (___2___%j == 0) if (___3___>=i)42. i=__1__; while(__2__) x=x+t*i; i=__3__;43. __1__ fun(struct student a)strcpy(__2__, "LiSi");for (i=0; i<3; i++) __3__+= 1;44. p = (n%2==0)?n/2:n/2+___1___;a[i] = a[p+___2___]; ___3___ = t;45. if (a[i]%2==__1__) a[j] = a[i]; __2__;return ___3___;46. n=__1__; while(t<=__2__) __3__;47. *(t+n)= __1__ ; n++; __2__ ;return __3__ ;48. ((___1___%t==0) && (i/t<n))< bdsfid="157" p=""></n))<> for(t=1; t< maxt*(n-1); ___2___)return ___3___;49.k= __1__ ;if(strlen(ps[k]) < strlen(__2__) ) k=j;ps[k]= __3__ ;50. for (j=a[i]*2; j<=n; j+=___1___)while (___2___==0)if (a[i]!=___3___)第01套填空题:【1】x 【2】n 【3】fabs(t)改错题:【1】for(i=1;i<=y;i++)【2】t=t%1000;第02套填空题:【1】n%10 【2】break 【3】break改错题:【1】if(t==0) 【2】*zero=count;第03套填空题:【1】0 【2】10*x 【3】n/10改错题:【1】*t=0;【2】if(d%2!=0)第04套填空题:【 1】j【2】0 [3]i++改错题:【1】for(i=2;i<=m;i++)【2】y-=1.0/(i*i);第05套填空题:【1】[M] 【2】M 【3】0改错题:【1】t=1; 【2】return(2*s);第06套填空题:【1】 [N] 【2】t[i][j] 【3】t[j][i]改错题:【1】#define FU(m,n) ((m)/(n))【2】return (value);第07套填空题:【1】k 【2】N 【3】a[k][i]改错题:【1】for(i = strlen( t )-1; i;i--)【2】if(t[j] > t[j + 1 ] )第08套填空题:【1】999 【2】t/10 【3】x改错题:【1】void fun(long s,long *t)【2】while(s>0)第09套填空题:【1】sum=0【2】t[i][i] 【3】1 改错题:【1】double r;【2】while(fabs(m-n)>0.001)第10套填空题:【1】char 【2】ch<='9' 【3】'0' 改错题:【1】b[k]=*p;【2】b[k]=' ';k++;第11套填空题:【1】0 【2】i++ 【3】2*i改错题:【1】void fun (char *s, char *t)【2】t[2*d] = 0;第12套填空题:【1】(fp) 【2】== 【3】fp改错题:【1】n=strlen( aa ) ;【2】ch=aa[i];第13套填空题:【1】N【2】substr【3】0改错题:【 1】fun(int x,int y, int z)【2】return j;第14套填空题:【 1】k【2】N-1【3】temp改错题:【1】void fun(int a[][M], int m)【2】a[j][k]=(k+1)*(j+1);第15套填空题:【1】a【2】a【3】b改错题:【1】c=tolower(c);【2】c=c+5;第16套填空题:【1】&&【2】'A'【3】ch改错题:【1】void fun(int *a)【2】a[j]=a[j-1];第17套填空题:【 1】48【2】s++【3】sum改错题:【1】if ((k%13 == 0) || (k%17 == 0))【2】}第18套填空题:【 1】1【2】-1【3】t改错题:【1】for(i=1;i<=3;i++)【2】if(k>=0&&k<=6)第19套填空题:【1】t,s【2】s[i]【3】0改错题:【 1】if(i%k==0)【2】if(k>=i) 第20套填空题:【1】struct student *【2】a->score[i]【3】a改错题:【1】char *fun( char (*sq)[M] ) 【2】return sp;第21套填空题:【1】a[i]【2】a[j] 【3】a[j] 改错题:【1】switch(g)【2】case 1: return 1; case 2:return 1; 第22套填空题:【1】t[][N] 【2】i=0;i<="" p="" 【3】s="" 改错题:【1】fun(int=""> 【2】else if(m>a[mid])第23套填空题:【1】*a【2】2【3】i+1改错题:【1】sum=0;【2】if((i+1)%5==0) 第24套填空题:【1】x【2】n【3】t改错题:【1】d=1;s=0;【2】d=d/10;第25套填空题:【1】1【2】1【3】i改错题:【1】k=i;【2】c=k;第26套填空题:【1】->sno【2】->name 【3】&t 改错题:【1】double fun(double a,double x0) 【2】if(fabs(x1-x0)>0.00001)第27套填空题:【1】1【2】2*i【3】(-1)改错题:【1】k++;【2】if(m==k)第28套填空题:【1】0【2】n【3】(t*t)改错题:【 1】for(i=0;str[i];i++)【2】if(substr[k+1]==0)第29套填空题:【1】*s【2】1【3】k[n] 改错题:【1】floatfun(int k)【2】return s;第30套填空题:【1】struct student【2】n-1【3】a[i].name,a[j].name改错题:【1】q=p+i;【2】while(q>p)第31套填空题:【1】a[i]%2【2】a[j]【3】j 改错题:【1】fun (int n)【2】if(n==1) 第32套填空题:【 1】10【2】0【3】x 改错题:【1】if (n==0)【2】result *= n-- ; 第33套填空题:【1】N【2】k【3】ss[i] 改错题:【1】int k=0;【2】while( *p || *q ) 第34套填空题:【1】n++【2】0【3】s++改错题:【1】t+=s[k];【2】*aver=ave;第35套填空题:【1】s[i]【2】k【3】0改错题:【1】while(*w)【2】if(*r==*p)第36套填空题:【1】N【2】i【3】-1改错题:【1】a2=k/10;【2】return i;第37套填空题:【1】s【2】--【3】return 0改错题:【 1】double fun (int n)【2】c=a;a+=b;b=c; 第38套填空题:【 1】3.【2】>【3】(2*i+1) 改错题:【 1】double fun(int n)【2】s=s+(double)a/b;第39套填空题:【1】n/2【2】i【3】a[n-i-1] 改错题:【1】n= *p-'0';【2】n=n*8+*p-'0'; 第40套填空题:【1】a【2】/doc/f813836864.html,【3】score[i] 改错题:【1】s[j++]=s[i];【2】s[j]=0;第41套填空题:【1】j=2【2】i【3】j改错题:【1】sum=0;j=0;【2】if(sum%4==2) 第42套填空题:【1】1【2】s【3】i*10改错题:【1】int fun(int n,int xx[][M]) 【2】printf("%d",xx[i][j]); 第43套填空题:【1】struct student【2】/doc/f813836864.html,【3】a.score[i]改错题:【1】if(p==n) return -1;【2】a[i]=a[i+1]; 第44套填空题:【1】1【2】i【3】a[p+i]改错题:【 1】float k;【2】if(*c>*a)第45套填空题:【1】1【2】j++【3】j改错题:【1】t=a;a=b;b=t;【2】return(b);第46套填空题:【1】0【2】x【3】t++改错题:【 1】int i,sl;【2】t[i]=s[sl-i-1];第47套填空题:【1】*s【2】s++【3】n改错题:【1】int j, c=0; double xa=0.;【2】if (x[j]>=xa)第48套填空题:【48.1.1】i【2】t++【3】count 改错题:【1】int fun(int a,int b,int c)【2】else return 1;第49套填空题:【1】i【2】ps[j]【3】tp改错题:【1】double fun(int n)【2】return sum;第50套填空题:【1】a[i]【2】a[i]【3】0改错题:【1】y=1;【2】d=a-i;编程题参考1、double fun(double x){int i=0;double s=1,a=1;while(fabs(a)>0.000001){a=a*(0.5-i)*x/(i+1);s+=a;i++;}return s;}2、double fun(int n){int i;double s=0,a=1;for(i=1;i<=n;i++){a=a/i;s+=a;}return s;}3、void fun(char p1[], char p2[]){while(*p1) p1++;while(*p2){*p1=*p2;p1++;p2++;}*p1=0;}4、int fun(int score[], int m, int below[]) {int i=0,s=0,n=0;for(i=0;is/=m;for(i=0;i<m;i++)< bdsfid="317" p=""></m;i++)<> {if(score[i]<s)< bdsfid="320" p=""></s)<>{below[n]=score[i];n++;}}return n;}5、void fun( char *a, int n ){/* 以下代码仅供参考 */int i=0,j,k=0;while(a[k]=='*') k++; /* k为统计*字符个数*/if(k>n){i=n;j=k;/* 以下完成将下标为k至串尾的字符前移k-n个位置 */while(a[j]){a[i]=a[j];i++;j++;a[i]=0;}}6、void fun( char *a ){i nt i=0,j=0;while(a[i]=='*') i++; while(a[i]){a[j]=a[i];i++;j++;}a[j]=0;}7、void fun( char *ss ){int i=1;while(ss[i-1]&&ss[i]) {if(ss[i]>='a'&&ss[i]<='z') ss[i]+='A'-'a';i+=2;}}8、void fun( STREC a[] )STREC tmp;int i,j;for(i = 0; i < N; i++)for(j = i+1; j < N; j++){ /* 请按题目要求完成以下代码*/ if(a[i].s<a[j].s)< bdsfid="381" p=""></a[j].s)<>{tmp=a[i];a[i]=a[j];a[j]=tmp;}}}9、void fun( char *a, char *h,char *p ) {a=h;while(h!=p){if(*h!='*'){*a=*h;a++;}h++;}while(*p){*a=*p;a++;p++;} *a=0;10、double fun( STREC *h ) {int i=0;double s=0;while(h->next){h=h->next;s+=h->s;i++;}s/=i;return s;}11、void fun(char *s, char t[]) {int i=0,j=0;while(s[i]){if(i%2==1&&s[i]%2==1) {t[j]=s[i];j++;}i++;}t[j]=0;}12、double fun( STREC *h ){double s=0;while(h->next){h=h->next;if(ss) s=h->s;}return s;}13、void fun( char *a, int n,int h,int e ){int i;for(i=0;ia[i]=0;}14、void fun(int a, int b, long *c){*c=a/10*10+a%10*1000+b/10+b%10*100; }15、double fun(int n){int i;double s=0,a=0;for(i=1;i<=n;i++){a+=sqrt(i);s+=a;}return s;}16、int fun(int n){int i,s=0;for(i=2;i<n;i++)< bdsfid="477" p=""></n;i++)<> {if(n%i==0) s+=i;}return s;}17、double fun( int n){int i,s=0;for(i=21;i<n;i++)< bdsfid="488" p=""></n;i++)<> {if(i%3==0&&i%7==0) s+=i;}return sqrt(s);}18、double fun(int n){int i;double s=1,a=1;for(i=1;i<=n;i++){a=a/i;s+=a;}return s;}19、void fun ( int x, int pp[], int *n ) {int i;for(i=1,*n=0;i<=x;i+=2){if(x%i==0){pp[*n]=i;(*n)++;}}}20、void fun(int a, int b, long *c){*c=a/10*100+a%10+b/10*10+b%10*1000; }21、void fun(STREC *a){int i;double s=0;for(i=0;is[i];a->ave=s/N;}22、void fun( char *a, char *p ){char *b=a;while(b<p)< bdsfid="537" p=""></p)<>{if(*b!='*'){*a=*b;a++;}b++;}while(*p){*a=*p;a++;p++;}*a=0;}23、double fun( STREC *a, STREC *b, int *n ) {int i;double s=0;for(i=0;is/=N;for(i=0,*n=0;i<n;i++)< bdsfid="562" p=""></n;i++)<>if(a[i].s<s)< bdsfid="565" p=""></s)<> {b[*n]=a[i];(*n)++;}}return s;}24、double fun(double x[9]){int i;double s=0;for(i=0;i<8;i++) s+=sqrt((x[i]+x[i+1])/2); return s;}25、double fun(double x[10]){int i;double s=0,x1=0;for(i=0;i<10;i++) x1+=x[i];x1/=10;for(i=0;i<10;i++) s+=(x[i]-x1)*(x[i]-x1); s=sqrt(s/10);return s;}26、double fun( STREC *a, STREC *b, int *n )int i;double s=0;for(i=0;is/=N;for(i=0,*n=0;i<n;i++)< bdsfid="601" p=""></n;i++)<>{if(a[i].s>=s){b[*n]=a[i];(*n)++;}}return s;}27、void fun(int a[], int n , int *max, int*d ){int i;for(i=1,*max=a[0],*d=0;i<n;i++)< bdsfid="617" p=""></n;i++)<>{if(*max<a[i])< bdsfid="620" p=""></a[i])<>{*max=a[i];*d=i;}}}28、double fun ( double eps){int i=1;double s=1,a=1;while(a>eps){a=a*i/(2*i+1);s+=a;i++;}return s*2;}29、double fun( int n ){int i;double s=0;for(i=1;i<=n;i++){s+=1.0/(i*(i+1));}return s;}30、int fun( STREC *a,STREC *b,int l, int h ){int i,j;for(i=0,j=0;i<n;i++)< bdsfid="656" p=""></n;i++)<> {if(a[i].s>=l&&a[i].s<=h) {b[j]=a[i];j++;}}return j;}31、void fun( char *a,int n ) {int i=0,j=0;while(a[i]){if(a[i]=='*') j++;else j=0;i++;}if(j>n){a[i-j+n]='\0';}}32、long fun ( char *p) {/* 以下代码仅供参考 */ int i,len; /* len为串长 */ long x=0;len=strlen(p);/* 以下完成数字字符串转换为一个数字。

全国计算机等级考试二级C语言机试真题2012年03月

全国计算机等级考试二级C语言机试真题2012年03月

全国计算机等级考试二级C语言机试真题2012年03月(总分:100.00,做题时间:90分钟)一、程序填空题(总题数:1,分数:30.00)1.下列给定程序中,函数fun的功能是:将形参a所指数组中的前半部分元素中的值与后半部分元素中的值对换。

形参n中存放数组中数据的个数,若n为奇数,则中间的元素不动。

例如,若a所指数组中的数据为:1, 2, 3, 4, 5, 6, 7, 8, 9, 则调换后为:6, 7, 8, 9, 5, 1, 2, 3, 4。

请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。

注意:部分源程序给出如下。

不得增行或删行,也不得更改程序的结构!试题程序:#include <stdio.h>#define N 9void fun(int a[], int n)int i, t, P;P=(n%2==0)? n/2:n/2+______;for(i=0; i<n/2; i++)t=a[i];a[i]=a[P+______;______=t;main()int b[N]=1, 2, 3, 4, 5, 6, 7, 8, 9, i;printf("/nThe original data: /n");for(i=0; i<N; i ++)printf("% 4d", b[i]);printf("/n");fun(b, N);printf("/nThe data after moving: /n");for(i=0; i<N; i ++)printf("% 4d", b[i]);printf("/n");(分数:30.00)填空项1:__________________ (正确答案:(1)1 (2)i (3)a[p+i]或*(a+p+i))解析:[考点] 填空1:该处是判断数组元素的个数是奇数还是偶数,为奇数时要使当前位置加1,使p指向数组中间位置。

全国等考C语言2012年3月真题和答案详解

全国等考C语言2012年3月真题和答案详解

2012年3月全国计算机等级考试二级笔试试卷C语言程序设计(考试时间90分钟,满分100分)一、选择题((1)—(10)、(21)—(40)每题2分,(11)—(20)每题1分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。

请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。

(1)下列叙述中正确的是A)循环队列是队列的一种顺序存储结构 B)循环队列是队列的一种链式存储结构C)循环队列是非线性结构 D)循环队列是一种逻辑结构(2)下列叙述中正确的是A)栈是一种先进先出的线性表 B)队列是一种后进先出的线性表C)栈与队列都是非线性结构 D)以上三种说法都不对(3)一棵二叉树共有25个结点,其中5个是叶子结点,则度为1的结点数为A)4 B)6 C)10 D)16(4)在下列模式中,能够给出数据库物理存储结构与物理存取方法的是A) 内模式 B)外模式 C) 概念模式 D)逻辑模式(5)在满足实体完整性约束的条件下A)一个关系中可以没有候选关键字 B)一个关系中只能有一个候选关键字C)一个关系中必须有多个候选关键字 D)一个关系中应该有一个或多个候选关键字(6)有三个关系R、S和T如下:则由关系R和S得到关系T的操作是A)自然连接 B)并 C)差 D)交(7)软件生命周期的活动中不包括A)软件维护 B)需求分析 C)市场调研 D)软件测试(8)下面不属于需求分析阶段任务的是A)确定软件系统的性能需求 B)确定软件系统的功能需求C)指定软件集成测试计划 D)需求规格说明书评审(9)在黑盒测试方法中,设计测试用例的主要根据是A)程序外部功能 B)程序数据结构 C)程序流程图 D)程序内部逻辑(10)在软件设计中不使用的工具是A)系统结构图 B)程序流程图 C)PAD图 D)数据流图(DFD图)(11)针对简单程序设计,以下叙述的实施步骤顺序正确的是A)确定算法和数据结构、编码、调试、整理文档 B)编码、确定算法和数据结构、调试、整理文档C)整理文档、确定算法和数据结构、编码、调试 D)确定算法和数据结构、调试、编码、整理文档(12)关于C语言中数的表示,以下叙述中正确的是A)只有整型数在允许范围内能精确无误的表示,实型数会有误差B)只要在允许范围内整型数和实型数都能精确的表示C)只有实型数在允许范围内能精确无误的表示,整型数会有误差D)只有用八进制表示的数才不会有误差(13)以下关于算法的叙述中错误的是A)算法可以用伪代码、流程图等多种形式来描述B)一个正确的算法必须有输入C)一个正确的算法必须有输出D)用流程图描述的算法可以用任何一种计算机高级语言编写成程序代码(14)以下叙述中错误的是A)一个C程序中可以包含多个不同名的函数B)一个C程序只能有一个主函数C)C程序在书写时,有严格的缩进要求,否则不能编译通过D)C程序中主函数必须用main作为函数名(15)设有以下语句char ch1, ch2; scanf("%c%c",&ch1,&ch2);若要为变量ch1和ch2分别输入字符A和B,正确的输入形式应该是A)A和B之间用逗号间隔 B)A和B之间不能有任何间隔符C)A和B之间可以用回车间隔 D)A和B之间用空格间隔(16)以下选项中非法的字符常量是A)'\101' B)'\65' C)'\xff' D)'\019'(17)有以下程序# include <stdio.h>main( ){ int a=0, b=0, c=0;c=(a-=a-5); (a=b,b+=4);printf("%d,%d,%d\n",a,b,c);}程序运行后的输出结果是A)0,4,5 B)4,4,5 C)4,4,4 D)0,0,0(18)设变量均已正确定义并赋值,以下与其他三组输出结果不同的一组语句是A)x++; printf("%d\n",x); B)n=++x; printf("%d\n",n);C)++x; printf("%d\n",x); D)n=x++; printf("%d\n",n);(19)以下选项中,能表示逻辑值“假”的是A)1 B)0.000001 C)0 D)100.0(20)有以下程序# include <stdio.h>main( ){ int a;scanf("%d",&a);if(a++<9) printf("%d\n",a);else printf("%d\n",a--);}程序运行时从键盘输入9<回车>,则输出结果是A)10 B)11 C)9 D)8(20)有以下程序# include <stdio.h>main( ){ int a;scanf("%d",&a);if( a++<9 ) printf( "%d\n",a );else prinft( "%d\n",a-- );}程序运行时从键盘输入9<回车>,则输出结果是A)10 B)11 C)9 D)8(21)有以下程序# include <stdio.h>main( ){ int s=0, n;for( n=0; n<3; n++ ){ switch(s){ case 0:case 1: s+=1;case 2: s+=2; break;case 3: s+=3;default: s+=4;}printf("%d,",s);}}程序运行后的输出结果是A)1,2,4, B)1,3,6, C)3,10,14, D)3,6,10,(22)若k是int类型变量,且有以下for语句for (k=-1; k<0; k++ ) printf("****\n");下面关于语句执行情况的叙述中正确的是A)循环体执行一次 B)循环体执行两次C)循环体一次也不执行 D)构成无限循环(23)有以下程序# include <stdio.h>main( ){ char a,b,c;b='1'; c='A';for (a=0; a<6; a++){ if(a%2) putchar(b+a);else putchar(c+a);}}程序运行后的输出结果是A)1B3D5F B)ABCDEF C)A2C4E6 D)123456(24)设有如下定义语句int m={2,4,6,8,10}, *k=m;以下选项中,表达式的值为6的是A)*(k+2) B)k+2 C)*k+2 D)*k+=2(25)fun函数的功能是:通过键盘输入给x所指的整型数组所有元素赋值。

2012年3月计算机二级C语言上机操作题及答案

2012年3月计算机二级C语言上机操作题及答案

C语言上机操作题.第1套填空题请补充FUN函数,FUN函数的功能是求10的阶乘。

注意:部分源程序给出如下。

请勿改动主函数main和其他函数中的任何内容,仅在fun函数的横线上填入所编写的若干表达式或语句。

试题程序:#include <stdio.h>long fun(int n){if (___1___)return (n*fun(___2___));return ___3___;}main(){p rintf("10!=%ld\n", fun(10));}第1处填空:n>1或1<n第2处填空:n-1第3处填空:1或11或1L改错题下列给定程序的功能是:读入一个整数K(2〈=K〈=10000),打印它的所有因子(即所有为素数的因子)。

例如,若输入整数2310,则应输出:2、3、5、7、11。

请改正程序中的错误,使程序能得出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!试题程序:#include <conio.h>#include <stdio.h>/********found********/IsPrime(int n);{int i, m;m = 1;/********found********/for (i=2; i<n; i++)if !(n%i){m = 0;break;}return(m);}main(){int j, k;printf("\nplease enter an integer number between 2 and 10000:");scanf("%d", &k);printf("\n\nThe prime factor(s) of %d is(are):", k);for (j=2; j<k; j++)if ((!(k%j)) && (IsPrime(j)))printf(" %4d,", j);printf("\n");}第1处:Isprime(int n);应改为Isprime(int n)第2处:if !(n%i)应该为if(!(n%i))编程题M个人的成绩存放在score数组中,请编写函数fun,它的功能是:返回低于平均分的认输,并将低于平均分的分数放在below所指的数组中。

2012年3月计算机二级C语言笔试真题及答案详解-推荐下载

2012年3月计算机二级C语言笔试真题及答案详解-推荐下载

C、10
B、循环队列是队列的一种链式存储结构
D、循环队列是一直逻辑结构
B、队列是一种后进先出的线性表
D、以上三种说法都不对
C、软件测试
B、确定软件系统的系统的系能需求
D、需求规格说明书审评
对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术通关,1系电过,力管根保线据护敷生高设产中技工资术艺料0不高试仅中卷可资配以料置解试技决卷术吊要是顶求指层,机配对组置电在不气进规设行范备继高进电中行保资空护料载高试与中卷带资问负料题荷试2下卷2,高总而中体且资配可料置保试时障卷,各调需类控要管试在路验最习;大题对限到设度位备内。进来在行确管调保路整机敷使组设其高过在中程正资1常料中工试,况卷要下安加与全强过,看度并22工且22作尽22下可22都能22可地护以缩1关正小于常故管工障路作高高;中中对资资于料料继试试电卷卷保破连护坏接进范管行围口整,处核或理对者高定对中值某资,些料审异试核常卷与高弯校中扁对资度图料固纸试定,卷盒编工位写况置复进.杂行保设自护备动层与处防装理腐置,跨高尤接中其地资要线料避弯试免曲卷错半调误径试高标方中高案资等,料,编试要5写、卷求重电保技要气护术设设装交备备置底4高调、动。中试电作管资高气,线料中课并敷3试资件且、设卷料中拒管技试试调绝路术验卷试动敷中方技作设包案术,技含以来术线及避槽系免、统不管启必架动要等方高多案中项;资方对料式整试,套卷为启突解动然决过停高程机中中。语高因文中此电资,气料电课试力件卷高中电中管气资壁设料薄备试、进卷接行保口调护不试装严工置等作调问并试题且技,进术合行,理过要利关求用运电管行力线高保敷中护设资装技料置术试做。卷到线技准缆术确敷指灵设导活原。。则对对:于于在调差分试动线过保盒程护处中装,高置当中高不资中同料资电试料压卷试回技卷路术调交问试叉题技时,术,作是应为指采调发用试电金人机属员一隔,变板需压进要器行在组隔事在开前发处掌生理握内;图部同纸故一资障线料时槽、,内设需,备要强制进电造行回厂外路家部须出电同具源时高高切中中断资资习料料题试试电卷卷源试切,验除线报从缆告而敷与采设相用完关高毕技中,术资要资料进料试行,卷检并主查且要和了保检解护测现装处场置理设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。

2012年到2010年计算机二级C语言笔试真题及答案详解

2012年到2010年计算机二级C语言笔试真题及答案详解

2012年3月全国计算机等级考试二级C语言真题一.选择题1.下列叙述中正确的是:A.循环队列是队列的一种顺序存储结构B.循环队列是队列的一种链式存储结构C.循环队列是非线性结构D.循环队列是一直逻辑结构2.下列叙述中正确的是A.栈是一种先进先出的线性表B.队列是一种后进先出的线性表C.栈和队列都是非线性结构D.以上三种说法都不对3.一棵二叉树共有25个节点,其中5个时子节点,那么度为1的节点数为A.4 B.6 C.10 D.164.在下列模式中,能够给出数据库物理存储结构与物理存取方法的是A.内模式B.外模式C.概念模式D.逻辑模式5.在满足实体完整性约束的条件下A.一个关系中可以没有候选关键词B.一个关系中只能有一个候选关键词C.一个关系中必须有多个候选关键词D.一个关系中应该有一个或者多个候选关键词6.有三个关系R.S和T如下:SA B Ca 1 2b 2 1RA B Ca 1 2b 2 1c 3 1TA B Ca 2 1b 3 1则由关系R和S得到关系T的操作是A.自然连接B.并C.差D.交7.软件生命周期中的活动不包括A.软件维护B.市场调研C.软件测试D.需求分析8.下面不属于需求分析阶段任务的是A.确定软件系统的功能需求B.确定软件系统的系统的系能需求B.制定软件集成测试计划D.需求规格说明书审评9.在黑盒测试方式中,设计测试用例的主要根据是A.程序外部功能B.程序内部逻辑C.程序数据结构D.程序流程图10.在软件设计中不使用的工具是A.系统结构图B.程序流程图C.PAD图D.数据流图(DFD图)11.针对简单程序设计,以下叙述的实施步骤正确的是A.确定算法和数据结构.编码.调试.整理文档B.编码.确定算法和数据结构.调试.整理文档C.整理文档.确定算法和数据结构.编码.调试D.确定算法和数据结构.调试.编码.整理文档12.关于C语言中数的表示,以下叙述正确的是A.只有整型数在允许范围内能精确无误的表示,实型数会有误差B.只要在在允许范围内整型和实型都能精确表示C.只有实型数在允许范围内能精确无误的表示,整型数会有误差D.只有八进制表示的数在不会有误差13.以下关于算法叙述错误的是A.算法可以用伪代码.流程图等多种形式来描述B.一个正确的算法必须有输入C.一个正确的算法必须有输出D.用流程图可以描述的算法可以用任何一种计算机高级语言编写成程序代码14.以下叙述错误的是A.一个C程序可以包含多个不同名的函数B.一个C程序只能有一个主函数C.C程序在书写时,有严格的缩进要求,否则不能编译通过D.C程序的主函数必须用main作为函数名15.设有以下语句Char ch1,ch2, scanf(”%c%c”,&ch1,&ch2);若要为变量ch1和ch2分别输入字符A和B,正确的输入形式应该是A.A和B之间用逗号间隔B.A和B之间不能有任何间隔符C.A和B之间可以用回车间隔D.A和B之间用空格间隔16.以下选项中非法的字符常量是A.’\102’ B.’\65’ C.’\xff’ D.’\019’17.有以下程序#include <sthio.h>Main(){Int A=0,B=0,C=0;C=(A-=A-5);(A=B,B+=4);Printf(“%d, %d, %d\n”,A,B,C)}程序运行后输出的结果是A 0,4,5B 4,4,5C 4,4,4D 0,0,018.设变量均已正确定义并且赋值,以下与其他三组输出结构不同的一组语句是A.x++; printf((“%d\n”,x); B.n=++x; printf((“%d\n”,n);C.++x; printf((“%d\n”,x); D.n=x++; printf((“%d\n”,n);19.以下选项中,能表示逻辑值“假”的是A 1B 0.000001C 0D 100.0 20.有以下程序#include <sthio.h>Main(){ int a;Scanf(“%d”,&a);If(a++<9) printf((“%d\n”,a);Else printf((“%d\n”,a--);}程序运行时键盘输入9<回车>,则输出的结构是A.10 B 11 C 9 D 821.有以下程序#include <sthio.h>Main(){int s=0,n;For (n=0;n<3;n<++){switch(s){ case 0;Case 1;s+=1;Case 2;s+=2;break;Case 3;s+3;Case 4;s+=4;}printf((“%d\n”,s);}}程序运行后的结果是A 1,2,4B 1,3,6C 3,10,14D 3,6,1022.若k是int类型变量,且有以下for语句For(k=-1;k<0;k++)printf(****\n”);下面关于语句执行情况的叙述中正确的是A.循环体执行一次B.循环体执行两次C.循环体一次也不执行D.构成无限循环23.有以下程序#include <sthio.h>Main(){char A,B,C;B=’1’;C=’A’For(A=0;A<6;A++){if(A%2) putchar(B+A);Else putchar(C+A);}}程序运行后输出的结果是A 1B3D5FB ABCDFEC A2C4E6D 12345624.设有如下定义语句Int m[ ]={2,4,6,8},*k=m;以下选项中,表达式的值为6的是A *(k+2)B k+2C *k+2D *k+=225.fun函数的功能是:通过键盘输入给x所指的整型数组所有元素赋值。

2012年3月全国计算机等级考试二级C语言上机题库完全版

2012年3月全国计算机等级考试二级C语言上机题库完全版

第一套1.程序填空程序通过定义学生结构体数组,存储了若干个学生的学号、姓名和三门课的成绩。

函数fun的功能是将存放学生数据的结构体数组,按照姓名的字典序(从小到大排序)。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

第一处struct student t;第二处for(i=0;i<n-1;i++)第三处if(strcmp(a[i].name,a[j].name)>0)2程序修改给定程序MODI1.C中函数fun的功能是:在p所指字符串中找出ASCII码值最大的字符,将其放在第一个位置上;并将该字符前的原字符向上顺序移动。

/**found**/q=p+i;/**found**/while(q>p)3程序设计学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写了函数fun,它的功能是:把指定分数范围内的学生数据放在b所指的数组中,分数范围内的学生人数由函数值返回。

int fun(STREC *a,STREC *b,int l,int h){int i,j=0;for(i=0;i<N;i++)if((a[i].s>=1&&a[i].s<=h)b[j++]=a[i];return j;}第二套1.程序填空给定程序中已建立一个带有头结点的单向链表,链表中的各结点按数据域递增有序连接。

函数fun的功能是:删除链表中数据域值相同的结点,使之只保留一个。

第一处free(q);第二处q=p->next;第三处q=q->next;2. 程序修改给定程序MODI1.C中函数fun的功能是:用选择法对数组中的n各元素按从小到大的顺序进行排序。

/**found**/p=j;/**found**/p=i;3. 程序设计请编写一个fun函数,它的功能是:求出1到m之间(含m)能被7或11整除的所有整数放在数组a中,通过n 返回这些数的个数。

2012年3月笔试参考答案及解析[共3页]

2012年3月笔试参考答案及解析[共3页]

全国计算机等级考试上机专用题库与笔试模拟考场——二级C 语言一、选择题(1)【答案】A) 【解析】循环队列是一种顺序存储的线性结构。

所以,“循环队列是队列的一种链式存储结构”、“循环队列是非线性结构”和“循环队列是一种逻辑结构”的说法都是错误的。

(2)【答案】D) 【解析】栈和队列都是线性结构,并且栈是后进先出,队列是先进先出,所以三种说法都不对。

(3)【答案】D) 【解析】根据公式n 0=n 2+1,叶子结点个数为5,则度为2的结点数为4,那么度为1的结点数n 1=n-n 0-n 2=25-5-4=16。

(4)【答案】A) 【解析】数据库系统在其内部具有三级模式:概念模式、内部模式与外部模式。

其中,内模式(又称物理模式)给出了数据库物理存储结构与物理存取方法,如数据存储的文件结构、索引、集簇及hash 等存取方式与存取路径,内模式的物理特性主要体现在操作系统及文件级上,它还未深入到设备级(如磁盘及磁盘操作)上。

概念模式是数据库系统中全局数据逻辑结构的描述,是全体用户(应用)的公共数据视图,主要描述数据的概念记录类型以及它们之间的关系,它还包括一些数据间的语义约束。

外模式(子模式或用户模式)是用户的数据视图,也就是用户所见到的数据模式,它由概念模式推导而出,在一般的DBMS 中都提供相关的外模式描述语言(外模式DDL)。

(5)【答案】D) 【解析】在关系R 中如记录完全函数依赖于属性(组)X,则称X 为关系R 中的一个候选关键字。

候选关键字的性质有:①在一个关系中,候选关键字可以有多个;②对于任何两条记录,候选关键字的值都是不相同的;③关键字可能由一个属性构成,也可能由多个属性构成;④在任何关系中至少有一个关键字。

所以,在满足实体完整性约束的条件下,一个关系中应该有一个或多个候选关键字。

(6)【答案】C) 【解析】自然连接是二元运算,其结果是得到两个关系中公共属性名字上相等的所有元组的组合;并是指将两个关系中的元素全部合并到一个新的关系之中;交是指将那些同时属于两个关系的元素组成一个新的关系;差是指将属于前一个集合但不属于后一个集合的元素组成新的2012年3月笔试参考答案及解析关系。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2012年3月全国计算机等级考试二级C语言真题木泉论坛首发!一、选择题1、下列叙述中正确的是:AA、循环队列是队列的一种顺序存储结构B、循环队列是队列的一种链式存储结构C、循环队列是非线性结构D、循环队列是一直逻辑结构2、下列叙述中正确的是DA、栈是一种先进先出的线性表B、队列是一种后进先出的线性表C、栈和队列都是非线性结构D、以上三种说法都不对D3、一棵二叉树共有25个节点,其中5个时子节点,那么度为1的节点数为A、4B、6C、10D、16A4、在下列模式中,能够给出数据库物理存储结构与物理存取方法的是A、内模式B、外模式C、概念模式D、逻辑模式D5、在满足实体完整性约束的条件下A、一个关系中可以没有候选关键词B、一个关系中只能有一个候选关键词C、一个关系中必须有多个候选关键词D、一个关系中应该有一个或者多个候选关键词C6、有三个关系R、S和T如下:SA B Ca 1 2b 2 1RA B Ca 1 2b 2 1c 3 1TA B Ca 2 1b 3 1则由关系R和S得到关系T的操作是A、自然连接B、并C、差D、交B7、软件生命周期中的活动不包括A、软件维护B、市场调研C、软件测试D、需求分析C8、下面不属于需求分析阶段任务的是A、确定软件系统的功能需求B、确定软件系统的系统的系能需求B、制定软件集成测试计划D、需求规格说明书审评A9、在黑盒测试方式中,设计测试用例的主要根据是A、程序外部功能B、程序内部逻辑C、程序数据结构D、程序流程图D10、在软件设计中不使用的工具是A、系统结构图B、程序流程图C、PAD图D、数据流图(DFD图)A11、针对简单程序设计,以下叙述的实施步骤正确的是A、确定算法和数据结构、编码、调试、整理文档B、编码、确定算法和数据结构、调试、整理文档C、整理文档、确定算法和数据结构、编码、调试D、确定算法和数据结构、调试、编码、整理文档B12、关于C语言中数的表示,以下叙述正确的是A、只有整型数在允许范围内能精确无误的表示,实型数会有误差B、只要在在允许范围内整型和实型都能精确表示C、只有实型数在允许范围内能精确无误的表示,整型数会有误差D、只有八进制表示的数在不会有误差B13、以下关于算法叙述错误的是A、算法可以用伪代码、流程图等多种形式来描述B、一个正确的算法必须有输入C、一个正确的算法必须有输出D、用流程图可以描述的算法可以用任何一种计算机高级语言编写成程序代码C14、以下叙述错误的是A、一个C程序可以包含多个不同名的函数B、一个C程序只能有一个主函数C、C程序在书写时,有严格的缩进要求,否则不能编译通过D、C程序的主函数必须用main作为函数名B15、设有以下语句Char ch1,ch2, scanf(”%c%c”,&ch1,&ch2);若要为变量ch1和ch2分别输入字符A和B,正确的输入形式应该是A、A和B之间用逗号间隔B、A和B之间不能有任何间隔符C、A和B之间可以用回车间隔D、A和B之间用空格间隔D16、以下选项中非法的字符常量是A、’\102’B、’\65’C、’\xff’D、’\019’A17、有以下程序#include <sthio.h>Main(){Int A=0,B=0,C=0;C=(A-=A-5);(A=B,B+=4);Printf(“%d, %d, %d\n”,A,B,C)}程序运行后输出的结果是A 0,4,5B 4,4,5C 4,4,4D 0,0,0D18、设变量均已正确定义并且赋值,以下与其他三组输出结构不同的一组语句是A、x++; printf((“%d\n”,x); B、n=++x; printf((“%d\n”,n);C、++x; printf((“%d\n”,x);D、n=x++; printf((“%d\n”,n); C19、以下选项中,能表示逻辑值“假”的是A 1B 0.000001C 0D 100.0A20、有以下程序#include <sthio.h>Main(){ int a;Scanf(“%d”,&a);If(a++<9) printf((“%d\n”,a);Else printf((“%d\n”,a--);}程序运行时键盘输入9<回车>,则输出的结构是A、10 B 11 C 9 D 8C21、有以下程序#include <sthio.h>Main(){int s=0,n;For (n=0;n<3;n<++){switch(s){ case 0;Case 1;s+=1;Case 2;s+=2;break;Case 3;s+3;Case 4;s+=4;}printf((“%d\n”,s);}}程序运行后的结果是A 1,2,4B 1,3,6C 3,10,14D 3,6,10A22、若k是int类型变量,且有以下for语句For(k=-1;k<0;k++)printf(****\n”);下面关于语句执行情况的叙述中正确的是A、循环体执行一次B、循环体执行两次C、循环体一次也不执行D、构成无限循环C23、有以下程序#include <sthio.h>Main(){char A,B,C;B=’1’;C=’A’For(A=0;A<6;A++){if(A%2) putchar(B+A);Else putchar(C+A);}}程序运行后输出的结果是A 1B3D5FB ABCDFEC A2C4E6D 123456A24、设有如下定义语句Int m[ ]={2,4,6,8},*k=m;以下选项中,表达式的值为6的是A *(k+2)B k+2C *k+2D *k+=2D25、fun函数的功能是:通过键盘输入给x所指的整型数组所有元素赋值。

在下列划线处应该填写的是#include <sthio.h>#define N 5Viod fun(int x[N]){int m;For(m=N-1;m>0;m--) scanf(“%d\n”, );}A &x[++m]B &x[m+1]C x+(m++)D x+mC26、若有函数Viod fun(double a[], int *n){………}以下叙述中正确的是A、调用fun函数时只有数组执行按值传送,其他实参和形参之间执行按地址传送B、形参a和n都是指针变量C、形参a是一个数组名,n是指针变量D、调用fun函数时将把double型实参数组元素一一对应地传送给形参a数组A27、有以下程序#include <sthio.h>Main(){int a,b,k,m,*p1,*p2;k=1,m=8;p1=&k,p2=&m;a=/*p1-m; b=*p1+*p2+6;printf(“%d ”,a); printf(“%d\n”,b);}编译时编译器提示错误信息,你认为出错的语句是A、a=/*p1-mB、b=*p1+*p2+6C、k=1,m=8;D、p1=&k,p2=&m;D28、以下选项中有语法错误的是A char *str[ ]={“guest”}; B、char str[10 ]={“guest”};C、char *str[3] *str[1]={“guest”};D、char str[3][10];str[1]={“guest”}; C29、avg函数的功能是求整型数组中的前若干个元素的平均值,设数组元素个数最多不超过10,则下列函数说明语句错误的是A、int avg(int *a,int n);B、int avg(int a[10],int n);C、int avg(int a,int n);D、int avg(int a[],int n);B30、有以下函数#include <sthio.h>#include <string.h>main(){ printf(“%d\n”,strren”ATS\n012\1”) );}程序运行后的输出结果是A 3B 8C 4D 9C31、有以下函数#include <sthio.h>main(){ char a[20],b[20],c[20];scanf(”%s%s”,a,b);get(c);printf(”%s%s\n”,a,b,c);}程序运行时从第一行开始输入this is a cat!<回车>,则输出结果是A thisisacat!B this is aC thisis a cat!D thisisa cat!A32、有以下函数#include <sthio.h>viod fun(char c){if(c>’x’) fun(c-1);printf (“%c”,c);}main(){fun”z”;}程序运行输出结果是A xyzB wxyzC zyxwD zyxD33、有以下函数#include <sthio.h>viod func(int n){int i;for(i=0;i<=n;i++) printf(“*”);printf(“#”);main(){ func(3); printf(“????”); func(4); printf(“\n”); }程序运行输出结果是A ****#????***#B ***#????*****#C **#????*****#D ****#????*****#D34、有以下函数#include <sthio.h>viod fun(int *s){staic int j=0;do {s[j]=s[j]+s[j+1];} wihle(++j<2);}main(){int k,a[10]={1,2,3,4,5};for(K+1;k<3;k++) fun(a);for(K+1;k<5;k++) printf(“%d”,a[k]);printf(“\n”);}程序运行输出结果是A 12345B 23445C 34756D 35745C35、有以下函数#include <sthio.h>#define S(x) (x)*x*2main(){int k=5,j=2;printf(“%d,”,S[k+j]); printf(“%d\n”,S(k-j)));}程序运行输出结果是A 98,18B 39,11 C39,18 D98,11D36、有以下函数#include <sthio.h>Viod exch(int t[ ]){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 10B 1 3 5 7 9C 1 2 3 4 5D 6 7 8 9 10C37、设有以下程序段Struct MP3{char name[20];Char color;Float price;}std,*ptr;ptr=& std;若要引用结构体变量std中的color成员,写法错误的是A std.colorB ptr-> colorC std-> colorD (*ptr) .color B38、有以下函数#include <sthio.h>struct stu{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 zhangB zhaoC wangD 19D39、有以下函数#include <sthio.h>mian(){int a=12,c;c=(a<<2)<<1;printf(“%d\n”,c):}程序运行输出结果是A 3B 50C 2D 96A40、以下函数不能用于向文件写入数据的是A ftellB fwriteC fputcD fprintf二、填空题1、将长度为n的顺序存储在线性表中删除一个元素,最坏情况下需要移动表中的元素个数为()。

相关文档
最新文档