2015年3月全国计算机等级考试二级《C语言》真题二及详解

合集下载

2015年《计算机等级考试二级C语言》精装版

2015年《计算机等级考试二级C语言》精装版

2015计算机二级C语言精装版找题目录1 int fun(___1___ *std)2 void WriteText(FILE ___1___)3 fprintf(___1___,"%d %f\n",i,sqrt((double)i));4 if((fs=fopen(source, ___1___))==NULL)5 s->data=___1___;6 t=t->___1___;7 free(___1___);8 while(p!=___1___)9 ___1___=0;10 s+= p->___1___;11___1___ fun(STU *std, char *num)12 if( ___1___==year)13 void modify(___1___ *ss,float a)14 void fun(PERSON ___1___)15 max= ___1___;16 void show(STU ___1___)17 for(j=___1___; j<M; j++)18 n=len; ___1___=i;19 n=strlen(___1___);20 int fun(char (*ss) ___1___, int *n)21 if ((ch>='a')___1___(ch<='z'))22 f = ___1___;23 t = ___1___;24 t = ___1___;/**********found**********/25 f = 1.0+___1___;26 for (___1___; j<i; j++)27 switch(___1___)28 for (j=a[i]*2; j<=n; j+=___1___)29 ((___1___%t==0) && (i/t<n))30 t = (a>b) ? (b>c? b :(a>c?c:___1___))31 n=__1__;32 while(t<=__1__){33 i=__1__;34 if(t%2==__1__)35{ t=*n % __1__;36 s=__1__;37 k=__1__;38 x=__1__/4;39 s=0; i=__1__;40 t[j]=__1__; j++;}41__1__ fun(int i, double x, double y)44 fp = fopen(filename, __1__);45 fp = fopen(__1__, "rb+");46 t=b[i]; b[i]=___1___; b[k]=t;47 if( ___1___==0 )48 pa->next=___1___;49 a[i]=___1___;50 __1__ = 0;1填空,(1) STYPE(2) FILE (3) fp改错 (1) for(i = 0 ; i < sl ; i++)(2) t[2*sl] = 0;编程 *c=a/10*1000+b/10*100+a%10*10+b%10;2填空,(1) *fw (2) str (3) str改错 (1) void fun(long s,long *t)(2) sl=sl*10;编程 int i, j=0, min=a[0].s;for(i=0; i<N; i++){if(min>a[i].s){j=0; b[j++]=a[i]; min=a[i].s;}else if(min==a[i].s)b[j++]=a[i];}return j;3填空,(1) fp(2) fclose(fp)(3) fname改错(1) for(i=j+1;i<n;i++) (2) p=i;编程 *c=(b%10)*1000+(a%10)*100+(b/10)*10+a/10; 4填空,(1) "r" (2) fs (3) ft改错 (1) if(d%2==0) (2) s/=10;编程 int i, j=0;for(i=0; i<strlen(s); i+=2)if(s[i]%2==0)t[j++]=s[i];t[j]='\0';5填空,(1) x 2) p (3) s改错(1) long k=1; (2) num/=10;编程 int i;float ave=0.0;for(i=0; i<n; i++)ave=ave+a[i];ave=ave/n;return ave;6填空,(1) next,(2) t->data (3) t改错 (1) fun (char *a) (2) printf("%c",*a);编程int i;char *p=s, *q=t;{n++;p++;}while(*q){m++;q++;}if(n>=m)p=s;elsep=t;return p;7填空,(1) q (2) next (3) next改错 (1) p=j;(2) p=i;编程int i,j=0;*n=0;for(i=1;i<=m;i++)if(i%7==0||i%11==0){a[j]=i; j++;}*n=j;8填空,(1) 0,(2) n (3) head,ch改错 (1) for(i=0,t=0;p[i];i++)(2) c[t]=0;编程int i;for(i=1; i<strlen(ss); i+=2){ if(ss[i]>='a'&& ss[i]<='z')ss[i]-=32;}9填空,(1) *n,(2) next(3) head改错 (1) a=0;(2) if(*r==*p)编程 *c=(a%10)*1000+(b/10)*100+(a/10)*10+(b%10); 10填空,(1) data,(2) next (3) head改错 (1) while(*r) (2) *a=*r;a++;r++;编程 int i, j=0;for(i=1; i<strlen(s); i+=2)t[j++]=s[i];t[j]='\0';11填空,(1) STU,(2) std[i].num (3) std[i]改错 (1) r++;p++; (2) if(*r==0)编程 int i, j=0;for(i=0; i<strlen(s); i++)if(s[i]%2)12填空,(1) std[i].year (2) std[i] (3) n改错 (1) IsPrime(int n) (2) if(!(n%i))编程 int i, max=a[0].s, j=0;for(i=1; i<N; i++)if(max<a[i].s){j=i;max=a[i].s;}*s=a[j];13填空,(1) STU (2) score[i](3) &&std改错 (1) if(k>0) (2) else if(k==0)编程 int i,j;for(i=0; i<N; i++)for(j=0; j<=i; j++)a[i][j]*=n;14填空,(1) *std,(2) PERSON (3) std改错 (1) int k,q,i; (2) pt[i]=str[k][i];编程 int i, j;for(i=0; i<N; i++)for(j=0; j<=i; j++)a[i][j]=0;15填空,(1) *std, (2) std[i].age (3) 改错(1) void fun(int *a,int *b) (2) t=*b;*b=*a;*a=t; 编程int i, j;for(i=0; i<N; i++)for(j=0; j<=i; j++)a[i][j]=0;pp[i]=tt[k][i];}16填空,(1) tt (2) tt.score[i] (3) std改错(1) m=i; (2) if(a[k]>a[m]) m=k;编程 unsigned t,s=0,s1=1,p=0;t=w;while(t>10){ if(t/10)p=t%10;s=s+p*s1;s1=s1*10;t=t/10;}return s;17填空,(1) i+1 (2) k=j (3) t改错 (1) void fun(char *str, char ch )int i=0, j;memset(b, 0, N);for(j=strlen(s)-1; j>=0; j--)b[i++]=s[j];strcpy(s, b);18填空,(1) k, (2) len (3) ss[i][j]改错 (1) result*=(double)n—; (2) return result; 编程char *p=s;int i=0;while(*p){if(*p !=c)s[i++]=*p;p++;} s[i]='\0';19填空,(1) ss[i],(2) n+j (3) 1改错 (1) if(*p==' ')(2) *(p-1)=toupper(*(p-1)); 编程char t;int i,j;for(i=1;i<num-2;i++)for(j=i+1;j<num-1;j++)if(s[i]<s[j]){t=s[i]; s[i]=s[j];s[j]=t;}20填空,,(1) [N] (2) len (3) *n=len改错 (1) t+=1./i; (2) return t;编程 int cnt=0;char *p=str, *q;while(*p){q=strstr(p, substr);if(q==NULL) break;p=q+strlen(substr);cnt++;} return cnt;21填空,(1) &&&&,(2) 'A' (3) ch改错 (1) void fun(int *a) (2) a[j]=a[j-1];编程 int s=0, i;for(i=2; i<n; i++)if(n%i==0)s+=i;return s;22填空,(1) 1,(2) -1 (3) t改错 (1) for(i=1;i<=3;i++) (2) if(k>=0&&&&k<=6) 编程 double s=1;long t=1;int i;for(i=1; i<=n; i++){23填空,(1) x,(2) n (3) fabs(t)改错:(1) for(i=1;i<=y;i++) (2) t=t%1000; 编程 int n=1;double sn=1;double xn=1,xn1=0;while(fabs(xn-xn1)>=0.000001){xn=xn*x*(0.5-n+1)/n;n+=1; sn+=xn;} return(sn);24填空,(1) 1,(2) 1 (3) i改错 (1) k=i;(2) c=k;编程 int i;double avg=0.0, sum=0.0, abs=0.0, fc;for (i=0;i<10;i++) sum+=x[i];avg=sum/10;for (i=0;i<10;i++)abs+=(x[i]-avg)*(x[i]-avg);fc=sqrt(abs/10);return fc;}25填空(1) x (2) n (3) t改错(1) d=1;s=0;(2) d=d/10;编程 int i;double avg=0.0,sum=0.0;for(i=0;i<8;i++){avg=(x[i]+x[i+1])/2;sum+=sqrt(avg);} return sum;26填空(1)j=2 (2)I (3)j改错(1) sum=0;j=0; (2) if(sum%4==2)编程 int i;double sum=0.0;if (n>1 && n<=100) {for(i=1; i<=n; i++)sum+=1.0/(2*i-1)-1.0/(2*i);} return sum;27填空(1) n%10 (2) break (3) break改错(1) if(t==0) (2) *zero=count;编程double s=0, t=1;int i;for(i=1; i<=n; i++){t *=i; s+=1./t;} return s;编程 int i;double sum=0.0;for(i=1; i<=n; i++)if(i%5==0||i%9==0)sum+=1.0/i;return sum;29填空(1) I (2) t++ (3) count改错(1) int fun(int a,int b,int c)(2) else return 1;编程 int i,j=0;double s=0;for (i=3; i<=n; i++){for (j=2; j<i; j++)if(i%j==0)break;if(j==i)s=s+sqrt(i);} return s;30填空(1) a (2) a (3) b改错(1) c=tolower(c); (2) c=c+5;编程 int i;double fac=1.0;double sum=1.0;for(i=2;i<=n;i++){fac+=sqrt(i);sum+=fac;} return sum;31填空(1) 0 (2) x (3) t++改错(1) int i,sl; (2) t[i]=s[sl-i-1];编程 *c=(b/10)*1000+(a/10)*100+(b%10)*10+(a%10); 32填空(1) 999 (2) t/10 (3) x改错(1) void fun(long s,long *t) (2) while(s>0) 编程 if(a[i].s<a[j].s){tmp=a[i];a[i]=a[j];a[j]=tmp;}33填空(1) 1 (2) s (3) i*10改错(1) int fun(int n,int xx[][M])(2) printf("%d",xx[i][j]);编程 *c=(a/10)*1000+(b%10)*100+(a%10)*10+(b/10);编程 char *p=p1;while(*p)p++;while(*p2) *p++=*p2++;*p=0;35填空(1) 10 (2) 0 (3) x改错(1) if (n==0) (2) result *= n-- ;编程 while(*p) x = x*10-48+(*p++);36填空(1)0 (2) n (3) (t*t)改错(1) for(i=0;str[i];i++) (2) if(substr[k+1]==0)编辑 double s;float n,t,pi;t=1;pi=0;n=1.0;s=1.0;while((fabs(s))>=eps){ pi+=s;t=n/(2*n+1);s*=t; n++;}pi=pi*2; return pi;37填空(1) 1 (2) 2*i (3) (-1)改错(1) k++; (2) if(m==k)编辑 int i;*max=a[0];*d=0;for(i=1; i<n; i++)if(*max<a[i]){*max=a[i];*d=i;}38填空(1) 3. (2) > (3) (2*i+1)改错(1) double fun(int n) (2) s=s+(double)a/b;编程 int i, j, max=a[0][0];for(i=0; i<2; i++)for(j=0; j<M; j++)if(max<a[i][j]) max=a[i][j];return max;39填空(1) 0 (2) i++ (3) 2.*i改错(1) void fun (char *s, char *t) (2) t[2*d] = 0; 编程 int i, j=0;for(i=1; i<strlen(s); i+=2)if(s[i]%2)t[j++]=s[i];t[j]='\0';40填空(1) s[i] (2) k (3) 0for(i=0; i<strlen(s); i++)if(s[i]%2==0) t[j++]=s[i]; t[j]=0;41填空(1) double (2) f1 (3) f2改错(1) char *fun(char *s,char *t)(2) ss++; (3) tt++;编程 int i;for(i=0; i<m; i++)fun1(w);42填空(1) FILE * (2) fp (3) ch改错(1) s[j++]=s[i]; (2) s[j]=0;编程 for(j=0; j<M; j++){b[n]=s[j][i];n=i*M+j+1;}43填空填空(1) FILE * (2) fclose(fp) (3) fp改错(1) t=(STU *)calloc(sizeof(STU),m);(2) t[k]=b[j];编程 int i,t,j=0,*p=a;t=p[0];for(i=0;i<=n;i++)if(t==p[i]) ;else{a[j]=t; t=p[i]; j++;}if(i>=n)a[j]=t; return j;44填空(1) "rb" (2) > (3) fwrite改错(1) p=s; (2) while(*p++);编程int i, j ;for(i = 0 ; i < M ; i++) b[i] = 0 ;for(i = 0 ; i < N ; i++) {j = a[i] / 10 ;if(j > 10) b[M - 1]++ ; else b[j]++ ;}45填空(1) filename (2) fp (3) fp改错(1) p=(NODE *)malloc(sizeof(NODE)); (2) return h; 编程int i,n=0;for(i=0;i<strlen(s);i++){if(s[i]>='a'&&s[i]<='z'&&s[i+1]==' '||s[i+1]=='\0') n++;} return n;46填空(1) b[k] (2) N/2 (3) <改错(1) int t[N] ,i, num=0;for(i=0;s[i]!='\0';i++)if(s[i]>='0'&&s[i]<='9')n++; return n;47填空(1) i%5 (2) \n (3) a[i]改错(1) return t; (2) for(i=0;i<N;i++) t[i]=x[i];(3) x[i+1]=findmid(a,b,c);编程 int i,j;j=-1;for(i=0;i<N;i++){if (*s==x)j=i; s++;} return j;48填空(1) pb (2) p->data (3) p->next改错(1) int i, one=0, zero=0;(2) switch( s[i] ) (3) case 0:zero++;break;编程 while(*s){*a=*s;s++; a++;} *a=’\0’;49填空(1) 0 (2) t (3) i+t改错(1) b[i]=0; (2) b[a[i] - 'a']++;(3) if (b[max] < b[i])编程 int i,j;long int p;i=strlen(s);p=s[0]-48;for(j=1;j<i;j++)p=p*10+(s[j]-48);return p;50填空(1) a[i] (2) m%10 (3) m/10改错(1) b[i] = a[i][0]; (2) for (j=1; j<=N-1; j++) (3) if ( b[i] > a[i][j] )编程double sum=0,max,min;int i;max=min=a[0];for(i=0;i<n;i++){sum=sum+a[i];if(max<a[i])max=a[i];if(min>a[i])min=a[i];}sum=sum-max-min;。

全国计算机等级考试二级C语言程序设计真题精选3(含答案)

全国计算机等级考试二级C语言程序设计真题精选3(含答案)

全国计算机等级考试二级C语言程序设计真题精选3一、单项选择题1.下列关于C语言文件的叙述中正确的是()。

A.文件由一系列数据依次排列组成,只能构成二进制文件B.文件由结构序列组成,可以构成二进制文件或文本文件C.文件由数据序列组成,可以构成二进制文件或文本文件√D.文件由字符序列组成,其类型只能是文本文件解析:C语言将文件看作是一个字符(字节)的序列,即由一个一个字符(字节)数据顺序组成。

根据数据的组成形式,可将文件分为两种:①ASCII文件,又称文本(text)文件,它的每一个字节可放一个ASCII码,代表一个字符;②二进制文件,是把内存中的数据按其在内存中的存储形式原样输出到磁盘上存放。

所以C文件就是一个字节流或一个二进制流。

2.有以下程序:#includ<stdio.h>main()inm=1,n=2,*p=&m,*q=&n,*r; r=p,p=q;q=r; printf("%d,%d,%d,%",m,n,*p,*q);}程序运行后的输出结果是()。

A.1,2,1,2B.1,2.2,1 √C.2,1,2,1D.2,1.1,2解析:本题定义了两个整型变量,然后用两个指针分别指向这两个整型变量,接着对指针进行交换,那么原来指向第一个整数的指针将指向第二个整数,原来指向第二个整数的指针将指向第一个整数。

3.有以下程序:#includ<stdio.h>#include<string.h>strucAina;chab[10];doublc;};strucf (struct);main()struca={1001,"ZhangDa",1098.0}; a=f(a);printf ("%d,%s,%6.1",a.a,a.b,a.c);}strucf(struct)t.a=1002;strcpy(t.b,"ChangRong");t.c=1202.0;returt;}程序运行后的输出结果是()。

3月计算机等级考试二级C语言笔试真题及参考答案

3月计算机等级考试二级C语言笔试真题及参考答案

2010年3月计算机等级考试二级C语言笔试真题一、选择题(1)下列叙述中正确的是A)对长度为n的有序链表进行查找,最坏清况下需要的比较次数为nB)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)C)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)D)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(nlog2n)(2)算法的时问复杂度是指A)算法的执行时间B)算法所处理的数据量C)算法程序中的语司或指令条数D)算法在执行过程中所需要的基本运算次数(3)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。

下面属于系统软件的是A)编辑软件B)操作系统C)教务管理系统D)浏览器(4)软件(程序)调试的任务是A)诊断和改正程序中的错误B)尽可能多地发现程序中的错误C)发现并改正程序中的所有错误D)确定程序中错误的性质(5)数据流程图(DFD图)是A)软件概要设计的工具B)软件详细设计的工具C)结构化方法的需求分析工具D)面向对象方法的需求分析工具(6)软件生命周期可分为定义阶段,开发阶段和维护阶段。

详细设计属于A)定义阶段B)开发阶段C)维护阶段D)上述三个阶段(7)数据库管理系统中负责数据模式定义的语言是A)数据定义语言B)数据管理语言C)数据操纵语言D)数据控制语言(8)在学生管理的关系数据库中,存取一个学生信息的数据单位是A)文件B)数据库C)字段D)记录(9)数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的A)需求分析阶段B)逻辑设计一阶段C)概念设计阶段D)物理设计阶段(10)有两个关系R和T如下:则由关系K得到关系T的操作是A)选择B)投影C)交D)并(11)以下叙述正确的是A)C语言程序是由过程和函数组成的B)C语言函数可以嵌套调用,例如:fun(fun(x))C)C语言函数不可以单独编译D)C语言中除了main函数,其他函数不可作为单独文件形式存在(12)以下关于C语言的叙述中正确的是A)C语言中的注释不可以夹在变量名或关键字的中间B)C语言中的变量可以在使用之前的任何位置进行定义C)在C语言算术表达式的书写中,运算符两侧的运算数类型必须一致D)C语言的数值常量中夹带空格不影响常量值的正确表示(13)以下C语言用户标识符中,不合法的是A)_1B)AaBcC)a_bD)a—b(14)若有定义:double a=22;int i=0,k=18;,则不符合C语言规定的赋值语句是A)a=a++,i++;B)i=(a+k)<=(i+k);C)i=a%11;D)i=!a;(15)有以下程序#includemain(){ char a,b,c,d;scanf(“%c%c”,&a,&b);c=getchar(); d=getchar();printf(“%c%c%c%cn”,a,b,c,d);}当执行程序时,按下列方式输入数据(从第1列开始,代表回车,注意:回车也是一个字符)1234则输出结果是A)1234B)12C)123D)1234(16)以i关于C语言数据类型使用的叙述中错误的是A)若要准确无误差的表示自然数,应本资.料来源于贵-州-学-习-网使用整数类型B)若要保存带有多位小数的数据,应使用双精度类型C)若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型D)若只处理“真”和“假”两种逻辑值,应使用逻辑类型(17)若a是数值类型,则逻辑表达式(a==1)||(a!=1)的值是A)1B)0C)2D)不知道a的值,不能确定(18)以下选项中与if(a==1)a=b; else a++;语句功能不同的switch语句是A)switch(a){case:a=b;break;default:a++;}B)switch(a==1){case 0:a=b;break;case 1:a++;}C)switch(a){default:a++;break;case 1:a=b;}D)switch(a==1){case 1:a=b;break;case 0:a++;}(19)有如下嵌套的if语句if (aif(aelse k=c;elseif(belse k=c;以下选项中与上述if语句等价的语句是A)k=(aB)k=(aC)k=(aD)k=(a(20)有以下程序#includemain(){in i,j,m=1;for(i=1;i<3;i++){for(j=3;j>O;j--){if(i*j)>3)break;m=i*j;}}printf("m=%dn",m);}程序运行后的输出结果是A)m=6B)m=2C)m=4D)m=5(21)有以下程序#include(stdio.h>main(){int a=l;b=2;for(;a<8;a++) {b+=a;a+=2;}printf("%d,%dn",a,b);}程序运行后的输出结果是A)9,18B)8,11C)7,11D)10,14(22)有以下程序,其中k的初值为八进制数#includemain(){int k=011;printf("%dn",k++);}程序运行后的输出结果是A)12B)11C)10D)9(23)下列语句组中,正确的是A)char *s;s="Olympic";B)char s[7];s="Olympic";C)char *s;s={"Olympic"};D)char s[7];s={"Olympic"};(24)以下关于return语句的叙述中正确的是A)一个自定义函数中必须有本文来源于贵州学习网WWW.GZU521.COM一条return语句B)一个自定义函数中可以根据不同情况设置多条return语句C)定义成void类型的函数中可以有带返回值的return语句D)没有return语句的自定义函数在执行结束时不能返回到调用处(25)下列选项中,能正确定义数组的语句是A)int num[0..2008];B)int num[];C)int N=2008;int num[N];D)#define N 2008int num[N];(26)有以下程序#includevoid fun(char *c,int d){*c=*c+1;d=d+1;printf("%c,%c,",*c,d);main(){char b='a',a='A';fun(&b,a);printf("%e,%en",b,a);}程序运行后的输出结果是A)b,B,b,AB)b,B,B,AC)a,B,B,aD)a,B,a,B(27)若有定义int(*Pt)[3];,则下列说法正确的是A)定义了基类型为int的三个指针变量B)定义了基类型为int的具有三个元素的指针数组ptC)定义了一个名为*pt、具有三个元素的整型数组D)定义了一个名为pt的指针变量,它可以指向每行有三个整数元素的二维数组(28)设有定义double a[10],*s=a;,以下能够代表数组元素a[3]的是A)(*s)[3]B)*(s+3)C)*s[3]D)*s+3(29)有以下程序#include(stdio.h)main(){int a[5]={1,2,3,4,5},b[5]={O,2,1,3,0},i,s=0;for(i=0;i<5;i++) s=s+a[b[i]]);printf("%dn", s);}程序运行后的输出结果是A)6B)10C)11D)15(30)有以下程序#includemain(){int b [3][3]={O,1,2,0,1,2,O,1,2},i,j,t=1;for(i=0;i<3;i++)for(j=ij<=1;j++) t+=b[i][b[j][i]];printf("%dn",t);}程序运行后的输出结果是A)1B)3C)4D)9(31)若有以下定义和语句char s1[10]="abcd!",*s2="n123\";printf("%d %dn", strlen(s1),strlen(s2));则输出结果是A)5 5B)10 5C)10 7D)5 8(32)有以下程序#include#define N 8void fun(int *x,int i){*x=*(x+i);}main(){int a[N]={1,2,3,4,5,6,7,8},i;fun(a,2);for(i=O;i{printf("%d",a[i]);}printf("n");}程序运行后的输出结果是A)1313B)2234C)3234D)1234(33)有以下程序#includeint f(int t[],int n);main{ int a[4]={1,2,3,4},s;s=f(a,4); printf("%dn",s);}int f(int t[],int n){ if(n>0) return t[n-1]+f(t,n-1);else return 0;}程序运行后的输出结果是A)4B)1OC)14D)6(34)有以下程此资料转贴于贵州学习网序#includeint fun(){ static int x=1;x*2; return x;}main(){int i,s=1,for(i=1;i<=2;i++) s=fun();printf("%dn",s);}程序运行后的输出结果是A)OB)1C)4D)8(35)有以下程序#include#define SUB(a) (a)-(a)main(){ int a=2,b=3,c=5,d;d=SUB(a+b)*c;printf("%dn",d);}程序运行后的输出结果是A)0B)-12C)-20D)10(36)设有定义:struct complex{ int real,unreal;} data1={1,8},data2;则以下赋值语句中错误的是A)data2=data1;B)data2=(2,6);C)data2.real=data1.real;D)data2.real=data1.unreal;(37)有以下程序#include#includestruct A{ int a; char b[10]; double c;};void f(struct A t);main(){ struct A a={1001,"ZhangDa",1098.0};f(a); printf("%d,%s,%6.1fn",a.a,a.b,a.c);}void f(struct A t){ t.a=1002; strcpy(t.b,"ChangRong");t.c=1202.0;} 程序运行后的输出结果是(38)有以下定义和语句struct workers{ int num;char name[20];char c;struct{int day; int month; int year;}s;};struct workers w,*pw;pw=&w;能给w中year成员赋1980的语句是A)*pw.year=198O;B)w.year=1980;C)pw->year=1980;D)w.s.year=1980;(39)有以下程序#includemain(){ int a=2,b=2,c=2;printf("%dn",a/b&c);}程序运行后的输出结果是A)OB)1C)2D)3(40)有以下程序#includemain(){ FILE *fp;char str[10];fp=fopen("myfile.dat","w");fputs("abc",fp);fclose(fp);fpfopen("myfile.data","a++");fprintf(fp,"%d",28);rewind(fp);fscanf(fp,"%s",str); puts(str);fclose(fp);}程序运行后的输出结果是A)abcB) 28cC) abc28D)因类型不一致而出错二、填空题(1)一个队列的初始状态为空。

计算机等级考试(国家)-二级c语言真题2015年03月-(2)

计算机等级考试(国家)-二级c语言真题2015年03月-(2)

二级C语言真题2015年03月-(2)一、选择题1、下列叙述中正确的是______。

A.每一个结点有两个指针域的链表一定是非线性结构B.所有结点的指针域都为非空的链表一定是非线性结构C.循环链表是循环队列的链式存储结构D.线性结构的存储结点也可以有多个指针2、使用白盒测试方法时,设计测试用例应根据______。

A.程序的内部逻辑 B.程序的复杂结构 C.程序的功能 D.使用说明书3、在医院,每个医生只属于某一个诊疗科,医生同一天可为多位患者看病,而一名患者可在多个科室治疗。

则实体医生和患者之间的联系是______。

A.多对多 B.多对一 C.一对多 D.一对一4、设序列长度为n,在最坏情况下,时间复杂度为O(log2n)的算法是______。

A.二分法查找 B.顺序查找 C.分块查找 D.哈希查找5、设数据集合为D={1,3,5,7,9},D上的关系为R,下列数据结构B=(D,R)中为非线性结构的是______。

A.R={(5,1),(7,9),(1,7),(9,3)} B.R={(9,7),(1,3),(7,1),(3,5)}C.R={(1,9),(9,7),(7,5),(5,3)} D.R={(1,3),(3,5),(5,9)}6、深度为7的二叉树共有127个结点,则下列说法中错误的是______。

A.该二叉树有一个度为1的结点 B.该二叉树是满二叉树C.该二叉树是完全二叉树 D.该二叉树有64个叶子结点7、某二叉树的中序序列为BDCA,后序序列为DCBA,则前序序列为______。

A.DCBA B.BDCA C.ABCD D.BADC8、下面能作为软件需求分析工具的是______。

A.PAD图 B.程序流程图C.甘特图 D.数据流程图(DFD图)9、下面不属于对象主要特征的是______。

A.唯一性 B.多态性 C.可复用性 D.封装性10、关系R经过运算σ(A=B∧G>4∧D>3)(R)的结果为______。

二级C语言真题2015年03月-(1)及答案解析

二级C语言真题2015年03月-(1)及答案解析

二级C语言真题2015年03月-(1)及答案解析(1/40)单项选择题第1题下列关于算法复杂度叙述正确的是______。

A.最坏情况下的时间复杂度一定高于平均情况的时间复杂度B.时间复杂度与所用的计算工具无关C.对同一个问题,采用不同的算法,则它们的时间复杂度是相同的D.时间复杂度与采用的算法描述语言有关下一题(2/40)单项选择题第2题设有栈S和队列Q,初始状态均为空。

首先依次将A,B,C,D,E,F入栈,然后从栈中退出3个元素依次入队,再将X,Y,Z入栈后,将栈中所有元素退出并依次入队,最后将队列中所有元素退出,则退队元素的顺序为______。

A.DEFXYZABCB.FEDZYXCBAC.FEDXYZCBAD.DEFZYXABC上一题下一题(3/40)单项选择题第3题下列叙述中正确的是______。

A.有两个指针域的链表称为二叉链表B.循环链表是循环队列的链式存储结构C.带链的栈有栈顶指针和栈底指针,因此又称为双重链表D.节点中具有多个指针域的链表称为多重链表上一题下一题(4/40)单项选择题第4题某二叉树共有845个节点,其中叶子节点有45个,则度为1的节点数为______。

A.400B.754C.756D.不确定上一题下一题(5/40)单项选择题第5题软件需求分析阶段的主要任务是______。

A.确定软件开发方法B.确定软件开发工具C.确定软件开发计划D.确定软件系统的功能上一题下一题第6题下面对软件测试描述错误的是______。

A.严格执行测试计划,排除测试的随意性B.随机地选取测试数据C.软件测试的目的是发现错误D.软件测试是保证软件质量的重要手段上一题下一题(7/40)单项选择题第7题结构化程序的3种基本控制结构是______。

A.顺序、选择和重复(循环)B.过程、子程序和分程序C.顺序、选择和调用D.调用、返回和转移上一题下一题(8/40)单项选择题第8题数据库中对概念模式内容进行说明的语言是______。

2015年3月全国计算机等级考试二级《VISUAL FOXPRO》真题二及详解

2015年3月全国计算机等级考试二级《VISUAL FOXPRO》真题二及详解

2015年3月全国计算机等级考试二级《VISUAL FOXPRO》真题二(总分100, 考试时间120分钟)一、单选题1. 假设A=〝计算机〞,B=〝等级考试〞,结果是"计算机等级考试"的表达式是()。

A STRING(A,〝是〞,B)B A*〝是〞*BC A/〝是〞/BD A-〝是〞-B答案:A字符表达式由字符串运算符将字符型数据连接起来形成,其运算结果仍然是字符型数据。

字符串运算符有两个,它们的优先级相同:+:前后两个字符串首尾连接形成一个新的字符串。

-:连接前后两个字符串,并将前字符串的尾部空格移到合并后的新字符串尾部。

故D选项正确。

2. 有三个关系R、S和T如下:则由关系R和S得到关系T的操作是()。

A 交B 差C 并D 选择答案:A用于查询的3个操作无法用传统的集合运算表示,引入的运算为投影运算、选择运算、笛卡尔积。

常用的扩充运算有交、除、连接及自然连接等。

选择,从关系中找出满足给定条件的元组的操作称为选择,题目中无给定条件,故D选项错误。

差:R-S结果是属于R但不属于S的记录组成的集合,T中元组"c 3 2"同时属于R和S,B选项错误。

并:RUS是将S中的记录追加到R后面,T中元组少于R,放C选项错误。

交:Rns结果是既属于R又属于S的记录组成的集合,与题目中结果相符,故A选项正确。

3. 在Visual FoxPro中设计屏幕界面通常使用()。

A 表单B 报表C 查询D 视图答案:A在Visual FoxPro中设计屏幕界面通常使用表单,打印输出通常使用报表。

故A选项正确.4. 一个关系中的各条记录()。

A 前后顺序不能任意颠倒,要按输入的顺序排列B 前后顺序不能任意颠倒,要按关键字段值的顺序排列C 前后顺序可以任意颠倒,但排列顺序不同,统计处理的结果可能不同D 前后顺序可以任意颠倒,不影响数据的实际含义答案:D一个关系就是一张二维表,每个关系有一个关系名。

全国计算机等级考试二级C语言真题题库1+2015年3月

全国计算机等级考试二级C语言真题题库1+2015年3月

全国计算机等级考试二级C语言真题题库1 2015年3月(总分:40.00,做题时间:120分钟)一、选择题(总题数:40,分数:40.00)1.算法的时间复杂度是指(分数:1.00)A.设计该算法所需的工作量B.执行该算法所需要的时间C.执行该算法时所需要的基本运算次数√D.算法中指令的条数解析:2.设循环队列存储空间为Q(1:50),初始状态为front=rear=50。

经过一系列入队和退队操作后,front=rear=25,则该循环队列中元素个数为(分数:1.00)A.26B.25C.24D.0或50 √解析:3.某棵树的度为4,且度为4、3、2、1的结点数分别为1、2、3、4,则该树中的叶子结点数为(分数:1.00)A.11 √B.9C.10D.8解析:4.设某二叉树的前序序列与中序序列均为ABCDEFGH,则该二叉树的后序序列为(分数:1.00)A.HGFEDCBA √B.EFGHABCDC.DCBAHGFED.ABCDEFGH解析:5.下列叙述中正确的是(分数:1.00)A.二分查找法适用于任何存储结构的有序线性表B.二分查找法只适用于顺序存储的有序线性表√C.二分查找法适用于有序循环链表D.二分查找法适用于有序双向链表解析:6.下列序列中不满足堆条件的是(分数:1.00)A.(98,95,93,96,89,85,76,64,55,49)√B.(98,95,93,94,89,85,76,64,55,49)C.(98,95,93,94,89,90,76,64,55,49)D.(98,95,93,94,89,90,76,80,55,49)解析:7.下面属于面向对象方法中对象基本特点的是(分数:1.00)A.多态性√B.方法唯一性C.可修改性D.灵活性解析:8.下面可以作为软件需求分析工具的是(分数:1.00)A.包图B.程序流程图C.PAD图D.数据流程图(DFD图) √解析:9.数据库的数据模型分为(分数:1.00)A.层次、关系和网状√B.网状、环状和链状C.大型、中型和小型D.线性和非线性解析:10.数据库系统的数据独立性是指(分数:1.00)A.不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序√B.不会因为数据的变化而影响应用程序C.不会因为存储策略的变化而影响存储结构D.不会因为某些存储结构的变化而影响其他的存储结构解析:11.以下叙述正确的是(分数:1.00)A.C程序由函数组成,可以不包含main函数B.每个C程序文件中的main函数都应当放在最前面C.每个C程序文件都应当包含一个main函数D.每个C程序都只能有一个main函数√解析:12.以下叙述错误的是(分数:1.00)A.计算机可以直接识别由十六进制代码构成的程序√B.可以连续执行的指令的集合称为"程序"C."程序"是人与计算机"对话"的语言D.计算机可以直接识别由0和1组成的机器语言代码解析:13.以下与数学表达式“0<x(分数:1.00)A.(0<x√B.0C.x>0 && xD.(x>0 && x2 && x<5)解析:14.以下选项中与 ( !a== 0 )的逻辑值不等价的表达式是(分数:1.00)A.( a== !0 ) √B.aC.(a>0 || a<0)D.(a!= 0 )解析:15.变量math和engl中存放了两门课的成绩。

《全国计算机等级考试二级教程——C语言程序设计》课后题及参考答案

《全国计算机等级考试二级教程——C语言程序设计》课后题及参考答案

《全国计算机等级考试二级教程——C语言程序设计》课后题及参考答案《全国计算机等级考试二级教程——C语言程序设计》课后题及参考答案(教育部考试中心)高等教育出版社出版(第一章、第二章、第三章)第一章程序设计基本概念1.1 在TRUBO C环境中用RUN命令运行一个C程序时,所运行的程序的后缀是______。

答案:.exe1.2 C语言源程序文件的后缀是_____,经过编译后,生成文件的后缀是_____,经过连接后,生成文件的后缀是_____。

答案:.c .obj .exe1.3 结构化程序由_____、_____、_____三种基本结构组成。

答案:顺序、选择、循环第二章 C程序设计的初步知识一、选择题2.1 以下选项中正确的整型常量是A)12. B)-20 C)1,000 D)4 5 6答案:B2.2 以下选项中正确的实型常量是A)0 B)3. 1415 C)0.329×10(2)(10的2次方)D).871答案:D2.3 以下选项中不正确的实型常量是A)2.607E-1 B)0.8103e 2 C)-77.77 D)456e-2答案:B2.4 以下选项中不合法的用户标识符是A)abc.c B)file C)Main D)PRINTF答案:A2.5 以下选项中不合法的用户标识符是A)_123 B)printf C)A$ D)Dim答案:C2.6 C语言中运算对象必需是整型的运算符是A)% B)/ C)! D)**答案:A2.7 可在C程序中用作用户标识符的一组标识符是A)void define WORDB)as_b3 _123 IfC)For -abc caseD)2c DO SIG答案:B2.8 若变量已正确定义并赋值,符合C语言语法的表达式是A)a=a+7; B)a=7+b+c,a++ C)int(12.3%4) D)a=a+7=c+b答案:B2.9 以下叙述中正确的是A)a是实型变量,C允许进行以下赋值a=10,因此可以这样说:实型变量中允许存放整型值。

全国计算机等级考试二级C语言【附详解】

全国计算机等级考试二级C语言【附详解】

是对顺序队列的改进,故循环队列是队列的一种顺序存储结正确的是
A、栈是一种先进先出的线性表 B、队列是一种后进先出的线性表 C、栈和队列都是非线性结构 D、以上三种说法都不对
栈是一种后进先出的线性表
队列是一种先进先出的线性表,二者均是线性结构,
答案为选项D。
ppt课件
4
一棵二叉树共有25个节点,其中5个是子节点,那么度为1的节
一个C程序有且只有一个主函数 main()。
一个C 程序可以包含多个不同名字的子函数
C程序在书写时没有严格的缩进要求。
ppt课件
16
设有以下语句 Char ch1,ch2, scanf(”%c%c”,&ch1,&ch2); 若要为变量ch1和ch2分别输入字符A和B,正确的输入形式应该是 A、A和B之间用逗号间隔 B、A和B之间不能有任何间隔符 C、A和B之间可以用回车间隔 D、A和B之间用空格间隔
软件详细设计- - 程序流程图(PDF)和PAD(问题分析图)是过程设计的常 用工具 数据流图(DFD图 ) 是 软 件 定 义 阶 段 结 构 化 分 析 方 法 常 用 的 工 具 。
ppt课件
12
针对简单程序设计,以下叙述的实施步骤正确的是 A、确定算法和数据结构、编码、调试、整理文档 B、编码、确定算法和数据结构、调试、整理文档 C、整理文档、确定算法和数据结构、编码、调试 D、确定算法和数据结构、调试、编码、整理文档
在输入格式中定义好了”%c%c”,其中没有任何符号,所以中间不能加任何字符,包 含不能加逗号、回车和空格,因为这些也算是字符。
ppt课件
17
以下选项中非法的字符常量是 A、’\102’ B、’\65’ C、’\xff’

计算机二级C语言测试题及答案解析

计算机二级C语言测试题及答案解析

计算机二级C语言测试题及答案解析计算机二级C语言测试题及答案解析C语言的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,下面给大家整理了计算机二级C语言测试题及答案,欢迎阅读!计算机二级C语言测试题及答案解析1.(A )是构成C语言程序的基本单位。

A、函数B、过程C、子程序D、子例程2.C语言程序从 C 开始执行。

A、程序中第一条可执行语句B、程序中第一个函数C、程序中的main函数D、包含文件中的第一个函数3、以下说法中正确的是( C )。

A、C语言程序总是从第一个定义的函数开始执行B、在C语言程序中,要调用的函数必须在main( )函数中定义C、C语言程序总是从main( )函数开始执行D、C语言程序中的main( )函数必须放在程序的开始部分4.下列关于C语言的说法错误的是( B ) 。

A、 C程序的工作过程是编辑、编译、连接、运行B、 C语言不区分大小写。

C、 C程序的三种基本结构是顺序、选择、循环D、C程序从main函数开始执行5.下列正确的标识符是(C )。

A、-a1B、a[i]C、a2_iD、int t5~8题为相同类型题考点:标识符的命名规则只能由字母、数字、下划线构成数字不能作为标识符的开头关键字不能作为标识符选项A中的“-” ,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3)6.下列C语言用户标识符中合法的是(B )。

A、3axB、xC、caseD、-e2 E)union选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1);7.下列四组选项中,正确的C语言标识符是( C )。

A、 %xB、a+bC、a123D、123选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2)8、下列四组字符串中都可以用作C语言程序中的标识符的是( A)。

全国计算机二级C考试真题第3套

全国计算机二级C考试真题第3套

2015年3月全国二级C操作题第3套一、基本操作给定程序中,函数fun的作用是:不断从终端读入整数,由变量a统计大于0的个数,用变量c来统计小于0的个数,当输入0时结束输入,并通过形参pa和pb把统计的数据传回主函数进行输出。

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

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!#include<stdio.h>void fun( int *px, int *py){/**********found**********/int __(1)__ ;scanf( "%d", &k );/**********found**********/while __(2)__{ if (k>0 ) a++;if(k<0 ) b++;/**********found**********/__(3)__;}*px=a; *py=b;}main(){ int x, y;fun( &x, &y );printf("x=%d y=%d\n", x,y );}二、简单应用给定程序modi1.c的主函数中,将a、b、c三个结点链成一个单向链表,并给各结点的数据域赋值,函数fun( )的作用是:累加链表结点数据域中的数据作为函数值返回。

请改正函数fun中指定部位的错误,使它能得出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

#include<stdio.h>typedef struct list{ int data;struct list *next;} LIST;int fun(LIST *h){ LIST *p;/**********found**********/int t;p=h;/**********found**********/while( *p ){/**********found**********/t=t+p.data;p=(*p).next;}return t;}main(){ LIST a, b, c, *h;a.data=34;b.data=51;c.data=87; c.next='\0';h=&a; a.next=&b; b.next=&c;printf("总和= %d\n",fun( h ));}三、综合应用请编写函数fun,其功能是分别统计形参t所指二维数组中字母A和C的个数。

计算机二级c考试题目及答案详解

计算机二级c考试题目及答案详解

计算机二级c考试题目及答案详解一、考试题目:1. 下列哪个选项中的标识符是非法的?A. student1B. _nameC. 2studentD. A123答案:C. 2student2. 下列哪个选项中的语句是合法的?A. if a == b then print("Equal")B. if a = b print("Equal")C. if a == b:print("Equal")D. if a = b:print("Equal")答案:C. if a == b:print("Equal")3. 在C语言中,下列哪个选项的循环结构是错误的?A. for(int i = 0; i < 10; i++)printf("%d ", i);B. while(i < 10)printf("%d ", i++);C. do {printf("%d ", i++);} while(i < 10);D. int i = 0;do {printf("%d ", i++);} while(i < 10);答案:D. int i = 0;do {printf("%d ", i++);} while(i < 10);二、答案详解:1. 标识符是用于命名变量、函数、类等在程序中使用的名称。

在C 语言中,标识符的命名规则包括以下要求:- 第一个字符必须是字母或下划线('_')。

- 标识符中的其他字符可以是字母、数字或下划线。

根据这些规则,选项C中的2student是非法的标识符,因为它以数字开头。

2. 判断语句是否合法时,需要注意C语言的语法规则:- if语句中的条件表达式需要用小括号括起来。

《全国计算机等级考试二级教程——C语言程序设计》课后题及参考答案3

《全国计算机等级考试二级教程——C语言程序设计》课后题及参考答案3

第三章、顺序结构⼀、选择题3.1 若a、b、c、d都是int类型变量且初值为0,以下选项中不正确的赋值语句是A) a=b=c=100; B) d++; C) c+b; D) d=(c=22)-(b++);答案:C3.2 以下选项中不是C语句的是A) {int i; i++; printf("%d\n", i); } B) ; C) a=5,c=10 D) { ; } 答案:C3.3 以下合法的C语⾔赋值语句是A) A=B=58 B) k=int(a+b); C) a=58,b=58 D) --i; 答案:D3.4 以下程序的输出结果是A) 0 B) 1 C) 3 D)不确定的值 main() { int x=10,y=3; printf("%d\n", y=x/y); } 答案:C3.5 若变量已正确说明为int类型,要给a、b、c输⼊数据,以下不正确的输⼊语句是A) read(a,b,c); B) scanf("%d%d%d",a,b,c); C) scanf("%D%D%D",&a,&b,&c); D) scanf("%d%d%d",&a,&b,&c);答案:D3.6 若变量已正确说明为float类型,要通过以下赋值语句给a赋予10、b赋予22、c赋予33,以下不正确的输⼊形式是A) 10 22 33 B) 10.0,22.0,33.0 C) 10.0 22.0 33.0 D) 10 2233 scanf("%f %f %f", &a, &b, &c);答案:B3.7 若变量以正确定义,要将a和b中的数进⾏交换,下⾯不正确的语句组是A) a=a+b,b=a-b,a=a-b; B) t=a,a=b,b=t; C) a=t; t=b; b=a; D) t=b; b=a; a=t;答案:C3.8 若变量已正确定义,以下程序段的输出结果是A) 输出格式说明与输出项不匹配,输出⽆定值 B) 5.17000 C) 5.168000 D) 5.169000x=5.16894; printf("%f\n",(int)(x*1000+0.5)/(float)1000);答案:D3.9 若有以下程序段,c3中的值是A) 0 B) 1/2 C) 0.5 D) 1int c1=1,c2=2,c3; c3=c1/c2;答案:A3.10 若有以下程序段,其输出结果是A) 0,0,-10 B) 0,0,5 C) -10,3,-10 D) 3,3,-10int a=0,b=0,c=0; c=(a-=a-5),(a=b,b+3); printf("%d,%d,%d\n",a,b,c);答案:B3.11 当运⾏以下程序时,在键盘上从第⼀列开始输⼊9876543210(此处代表Enter),则程序的输出结果是A) a=98,b=765,c=4321B) a=10,b=432,c=8765C) a=98,b=765.000000,c=4321.000000D) a=98,b=765,c=4321.0main() { int a; float b,c; scanf("-?O",&a,&b,&c); printf("\na=%d,b=%f,c=%f\n",a,b,c); }答案:C3.12 以下程序的输出结果是A) a=%2,b=%5B) a=2,b=5C) a=%%d,b=%%dD) a=%d,b=%dmain() { int a=2,b=5; printf("a=%%d,b=%%d\n",a,b); }答案:D3.13 若int类型占两个字节,则以下程序段的输出是 A) -1,-1 B) -1,32767 C) -1,32768 D) -1,65535int a=-1; printf("%d,%u\n",a,a);答案:D3.14 以下程序段的输出是 A) *496 * B) * 496* C) *000496* D)输出格式符不合法int x=496; printf("*%-06d*\n",x);答案:A3.15 以下程序段的输出是 A) |3.1415| B) | 3.0| C) | 3| D) | 3.|float a=3.1415; printf("|%6.0f|\n",a);答案:C3.16 以下程序段的输出是 A) |2345.67800| B) |12345.6780| C) |12345.67800| D) |12345.678| printf("|.5f|\n",12345.678);答案:C3.17 以下程序段的输出是 A) *0000057.66* B) * 57.66* C) *0000057.67* D) * 57.67* float a=57.666; printf("*0.2f*\n",a);答案:C3.18 若从终端输⼊以下数据,要给变量C赋以283.19,则正确的输⼊语句是 A) scanf("%f",c); B) scanf("%8.4f",&c); C)scanf("%6.2f",&c); D) scanf("%8",&c); 283.1900 表⽰Enter键答案:由于印刷错误,本题没有正确答案。

2015年计算机二级C语言测试题及答案解析(二)

2015年计算机二级C语言测试题及答案解析(二)

基本输入输出及流程控制1.#includemain(){ int a=1,b=3,c=5;if (c==a+b)printf("yes\n");elseprintf("no\n");}运行结果为:no详见教材p89 选择结构详见教材p91关系符号详见附录D p378符号的优先级==表示判断符号两边的值是否相等;=表示将符号右边的值赋给左边的变量本题考点是选择结构3种基本形式的第二种选择结构三种一般形式中的“语句”皆为复合语句,复合语句要用{ }括起来,只有当复合语句中只包括一条语句时可以省略{ },此题即如此,因此两个printf操作没有加{ }若c==a+b成立,则执行printf("yes\n");否则(即c==a+b不成立),执行printf("no\n");+的优先级高于==,因此先算a+b,值为4,表达式5==4不成立,因此执行printf("no\n");即输出字符串no2.#includemain(){ int a=12, b= -34, c=56, min=0;min=a;if(min>b)min=b;if(min>c)min=c;printf("min=%d", min);}运行结果为:min=-34详见教材p89 选择结构本题考点是选择结构3种基本形式的第一种一共包含了两个选择结构(两个if语句)定义变量,并赋值此时a=12, b= -34, c=56, min=0将a中值拷贝,赋给min,覆盖了min中的0,此时min中的值被更新为12。

若min>b成立,则执行min=b;若min>c成立,则执行min=c;输出min中的值12大于-34,第一个if语句的表达式成立,因此执行min=b; 执行后min中的值被更新为-34. -34小于56,第二个if语句的表达式不成立,因此不执行min=c;最后输出min中的值,为-34.6.#includemain(){ int m;scanf("%d", &m);if (m >= 0){ if (m%2 == 0) printf("%d is a positive even\n", m);else printf("%d is a positive odd\n", m); }else{ if (m % 2 == 0)printf("%d is a negative even\n", m);else printf("%d is a negative odd\n", m); }}若键入-9,则运行结果为: -9 is a negative odd7.#includemain(){ int num=0;while(num<=2){ num++;printf("%d\n",num);}}运行结果为:123详见教材p115循环结构当循环条件num<=2成立的时候,执行循环体{ num++;printf("%d\n",num);}中的语句。

全国计算机二级C语言真题2015年03月-(1)

全国计算机二级C语言真题2015年03月-(1)

二级C语言真题2015年03月-(1)一、选择题1. 下列关于算法复杂度叙述正确的是______。

A.最坏情况下的时间复杂度一定高于平均情况的时间复杂度B.时间复杂度与所用的计算工具无关C.对同一个问题,采用不同的算法,则它们的时间复杂度是相同的D.时间复杂度与采用的算法描述语言有关答案:B[解答] 算法的时间复杂度是指执行算法所需要的计算工作量,它与使用的计算机、程序设计语言以及算法实现过程中的许多细节无关,B选项正确,D选项错误。

最坏情况下的时间复杂度可以与平均情况的时间复杂度相同,A选项错误。

不同的算法时间复杂度一般不相同,C选项错误。

2. 设有栈S和队列Q,初始状态均为空。

首先依次将A,B,C,D,E,F入栈,然后从栈中退出3个元素依次入队,再将X,Y,Z入栈后,将栈中所有元素退出并依次入队,最后将队列中所有元素退出,则退队元素的顺序为______。

A.DEFXYZABCB.FEDZYXCBAC.FEDXYZCBAD.DEFZYXABC答案:B[解答] 栈是一种特殊的线性表,它所有的插入与删除都限定在表的同一端进行。

队列是指允许在一端进行插入,而在另一端进行删除的线性表。

将A,B,C,D,E,F入栈后,栈中元素为ABCDEF,退出3个元素入队,队列元素为FED,将X,Y,Z入栈后栈中元素为ABCXYZ,全部入队后,队列元素为FEDZYXCBA,故B选项正确。

3. 下列叙述中正确的是______。

A.有两个指针域的链表称为二叉链表B.循环链表是循环队列的链式存储结构C.带链的栈有栈顶指针和栈底指针,因此又称为双重链表D.节点中具有多个指针域的链表称为多重链表答案:D[解答] 双向链表与二叉链表均是有两个指针域的链表,A选项错误。

在单链表的第一个节点前增加一个表头节点,队头指针指向表头节点,最后一个节点的指针域的值由NULL改为指向表头节点,这样的链表称为循环链表。

循环队列是队列的一种顺序存储结构。

2015年3月全国计算机等级考试二级《C语言》真题一及详解

2015年3月全国计算机等级考试二级《C语言》真题一及详解

2015年3月全国计算机等级考试二级《C语言》真题一(总分100, 考试时间120分钟)一、选择题(每小题1分,共40分)1. 单击窗口内的按钮时,产生的事件是()。

A MouseEventB WindowEventC ActionEventD KeyEvent该问题分值: 1答案:C在构件的事件类中,MouseEvem事件是鼠标事件,包括鼠标单击,移动;WindowEvent事件是窗口事件,包括关闭窗口,窗口闭合,图标化;ActionEvent事件是动作事件,包括按钮按下;TextField 中按<Enter>键;KeyEvent事件是键盘事件,包括键按下、释放。

2. 在Java中,实现用户界面功能的包是()。

A java.appletB javax.transactionC java.utilD java.awt该问题分值: 1答案:D本题考查考生对Java包功能的理解。

选项A中java.applet包是为Applet提供执行需要的所有类,主要访问Applet内容的通信类;选项B中transaction包是属于javax而不是java,javax.transaction包是提供事务处理所需要的包;选项C中java.util包提供使用程序类和集合类,如系统特性定义和使用、日期函数类、集合Collection、Map、List、Array等常用工具类;java.awt 包是封装抽象窗口工具包,提供构建和管理用户图形界面功能,为本题正确答案。

3. 下列选项中属于字符串常量的是()。

A ·abc·B "abc"C [abc]D (abc)该问题分值: 1答案:BJava中字符串常量由双引号和其中间的字符所组成.4. 类Panel默认的布局管理器是()。

A GridLayoutB BorderLayoutC FlowLayoutD CardLayout该问题分值: 1答案:C本题考查Java中的布局管理器。

全国计算机等级考试二级教程——《C语言程序设计》课后题及参考答案

全国计算机等级考试二级教程——《C语言程序设计》课后题及参考答案

答案:C
3.20 以下程序的输出结果是
A) 9 8 B) 8 9 C) 6 6 D) 以上三个都不对 #include "math.h" main() { double a=-3.0, b=2; printf("%3.0f %3.0f\n",pow(b,fabs(a)),pow(fabs(a),b)); } 答案:B 来源:
3.23 复合语句在语法上被认为是____。空语句的形式是____。
答案:一条语句、 ;
3.24 C语句的最后用____结束。 答案:;
3.25 以下程序段,要求通过scanf语句给变量赋值,然后输出变量的值。 写出运行时给k输入100,给a输入25.81,给x输入1.89234时的三种可能 的输入形式____、_____、____。 int k; float a; double x; scanf("%d%f%lf",&k,&a,&x); printf("k=%d,a=%f,x=%f\n",k,a,x); 答案: (1) 100 25.81 1.89234 (2) 100 25.81<CR>1.89234 (3) 100<CR> 25.81<CR> 1.89234<CR>
3.19 若变量已正确说明,要求用以下语句给a赋予
3.12、给b赋予9.0,则正确的输入形式是(□代表空格)
A)
3.12□□9.0<CR> B) a=□□3.12b=□□□9<CR> C) a=3.12,b=9<CR> D)
a=3.12□□,b=9□□□□<CR> scanf("a=%f,b=%f",&a,&b); <CR>表示Enter键
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2015年3月全国计算机等级考试
二级《C语言》真题二
(总分100, 考试时间120分钟)
一、选择题
1. 下列叙述中正确的是
A 算法复杂度是指算法控制结构的复杂程度
B 算法复杂度是指设计算法的难度
C 算法的时间复杂度是指设计算法的工作量
D 算法的复杂度包括时间复杂度与空间复杂度
答案:D
2. 设循环队列的存储空间为Q(1:50),初始状态为front=rear=50。

现经过一系列入队与退队操作后,front=rear=1,此后又正常地插入了两个元素。

最后该队列中的元素个数为
A 2
B 1
C 3
D 52
答案:A
3. 一棵完全二叉树共有360个结点,则在该二叉树中度为1的结点个数为
A 0
B 1
C 180
D 181
答案:B
4. 设某二叉树的后序序列与中序序列均为ABCDEFGH,则该二叉树的前序序列为
A HGFEDCBA
B ABCDEFGH
C EFGHABCD
D DCBAHGFE
答案:A
5. 在排序过程中,每一次数据元素的移动会产生新的逆序的排序方法是
A 快速排序
B 简单插入排序
C 冒泡排序
D 以上说法均不正确
答案:A
6. 下面对软件工程描述正确的是
A 软件工程是用工程、科学和数学的原则与方法研制、维护计算机软件的有关技术及管理方法
B 软件工程的三要素是方法、工具和进程
C 软件工程是用于软件的定义、开发和维护的方法
D 软件工程是为了解决软件生产率问题
答案:A
7. 耦合性和内聚性是对模块独立性度量的两个标准。

下列叙述中正确的是
A 内聚性是指模块间互相连接的紧密程度
B 提高耦合性降低内聚性有利于提高模块的独立性
C 耦合性是指一个模块内部各个元素间彼此结合的紧密程度
D 降低耦合性提高内聚性有利于提高模块的独立性
答案:D
8. 下列关于数据库系统的叙述中正确的是
A 数据库系统中数据的一致性是指数据类型一致
B 数据库系统避免了一切冗余
C 数据库系统减少了数据冗余
D 数据库系统比文件系统能管理更多的数据
答案:C
9. 一名演员可以出演多部电影,则实体演员和电影之间的联系是
A 多对多
B 一对一
C 多对一
D 一对多
答案:A
10. 下面可以作为软件需求分析工具的是
A 包图
B 程序流程图
C PAD图
D 数据流程图(DFD图)
答案:D
11. 有以下程序
#include <stdio.h>
main()
{ int a=2,b=3,c=4;
a*=16 +(b++) - (++c);
printf("%d \n",a );
}
程序运行后的输出结果是
A 15
B 30
C 28
D 14
答案:C
12. 以下叙述正确的是
A 通过分解成简单子任务,可以完成任何复杂任务
B 每个结构化程序都要包含全部三种基本结构
C C语言程序的所有自定义函数只能写在同一个源文件中
D C语言程序允许使用多个main函数,只要它们的函数体各不相同即可
答案:A
13. 以下选项中,合法的C语言实数是
A E4.8
B 4.3e0.2
C 4e0
D 0.29E
答案:C
14. 设a,b,c已定义为整型变量,以下选项中不正确的赋值表达式是
A a = 3 = (b = 2) = 1;
B a = (b = 0) * c + 1;
C a = (b = 0) * c + 1;
D a = 10 % (b = c = 2.0);
答案:A
15. 若变量已正确定义并赋初值,以下合法的赋值语句是
A k=(m==n);
B k=-m-n
C k=int(m+n);
D k=m*n=1;
答案:A
16. 以下关于逻辑运算符两侧运算对象的叙述中正确的是
A 只能是整数0或1
B 只能是整数0或非0整数
C 可以是结构体类型的数据
D 可以是任意合法的表达式
答案:D
17. 以下选项中错误的是
A printf("%s\n", 's');
B printf("%d %c\n", 's','s');
C printf("%c\n", 's'- 32);
D printf("%c\n", 65);
答案:A
18. 若有定义:char ch;当执行以下循环时从键盘输入abcde<回车>,将输出*的个数是while((ch=getchar())=='e') printf("*");
A 4
B 0
C 5
D 1
答案:B
19. 有以下程序
#include <stdio.h>。

相关文档
最新文档