2011年上半年浙江省高等学校计算机等级考试二级C试卷及答案

合集下载

2011年9月全国计算机等级考试二级C语言试卷及答案

2011年9月全国计算机等级考试二级C语言试卷及答案

2011年9月全国计算机等级考试二级笔试试卷(考试时间90分钟,满分100分)一、选择题(每小题2分,共70分)1.下列叙述中正确的是。

A.算法就是程序B.设计算法时只需要考虑数据结构的设计C.设计算法时只需要考虑结果的可靠性D.以上三种说法都不对2.下列关于线性链表的叙述中,正确的是A.各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致B.各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续C.进行插入与删除时,不需要移动表中的元素D.以上三种说法都不对3.下列关于二叉树的叙述中,正确的是A.叶子结点总是比度为 2 的结点少一个B.叶子结点总是比度为 2 的结点多一个C.叶子结点数是度为 2 的结点数的两倍D.度为 2 的结点数是度为 1 的结点数的两倍4.软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。

下面属于应用软件的是A.学生成绩管理系统B.C 语言编译程序C.UNIX 操作系统D.数据库管理系统5.某系统总体结构图如下图所示:该系统总体结构图的深度是A.7B.6C.3D.26.程序调试的任务是A.设计测试用例B.验证程序的正确性C.发现程序中的错误D.诊断和改正程序中的错误7.下列关于数据库设计的叙述中,正确的是A.在需求分析阶段建立数据字典B.在概念设计阶段建立数据字典C.在逻辑设计阶段建立数据字典D.在物理设计阶段建立数据字典8.数据库系统的三级模式不包括A.概念模式B.内模式C.外模式D.数据模式9.有三个关系 R、S 和 T 如下:则由关系 R 和 S 得到关系 T 的操作是A.自然连接B.差C.交D.并10.下列选项中属于面向对象设计方法主要特征的是A.继承B.自顶向下C.模块化D.逐步求精11.以下叙述中错误的是A.C 语言编写的函数源程序,其文件名后缀可以是 CB.C 语言编写的函数都可以作为一个独立的源程序文件C.C 语言编写的每个函数都可以进行独立的编译并执行D.一个 C 语言程序只能有一个主函数12.以下选项中关于程序模块化得叙述错误的是A.把程序分成若干相对独立的模块可便于编码和调试B.把程序分成若干相对独立,功能单一的模块,可便于重复使用这些模块C.可采用自底向上、逐步细化的设计方法把若干独立模块组装成所要求的程序D.可采用自顶向下、逐步细化的设计方法把若干独立模块组装成所要求的程序13.以下选项中关于 C 语言常量的叙述错误的是:A.所谓常量,是指在程序运行过程中,其值不能被改变的量B.常量分为整型常量、实型常量、字符常量和字符串常量C.常量可分为数值型常量和非数值型常量D.经常被使用的变量可定义成常量14.若有定义语句:int a=10;double b=3.14;,则表达式‘A’+a+b 值得类型是A.charB.intC.doubleD.float15.如有定义语句:int x=12,y=8,z;,在其后执行语句 z=0.9+x/y,则 z 的值为A.1.9B.1C.2D.2.416.若有定义:int a,b;,通过语句scanf(‚%d;%d‛,&a,&b);,能把整数 3 赋给变量 a,5 付给变量 b 的输入数据是A.3 5B.3,5C.3;5D.3517.若有定义语句:int k1=10,k2=20;,执行表达式(k1=k1>k2)&&(k2=k2>k1)后,k1 和 k2 的值分别为A. 0 和 1B.0 和 20C.10 和 1D. 10 和 2018.有以下程序#include <stdio.h>Main(){ int a=1,b=0;If(--a) b++;Else if(a==0) b+=2;Elseb+=3;Printf(‚%d\n‛,b);}程序运行后的输出结果是A.0B.1C.2D.319.下列条件语句中输出结果与其他语句不同的是A.if(a)printf(‚%d\n‛,x); else printf(‚%d\n‛,y);B.if(a==0)printf(‚%d\n‛,y); else printf(‚%d\n‛,x);C.if(a!=0)printf(‚%d\n‛,x); else printf(‚%d\n‛,y);D.if(a==0)printf(‚%d\n‛,x); else printf(‚%d\n‛,y);20.有以下程序:#include <stdio.h>Main(){ int a=7;While(a--);Printf(‚%d\n‛,a);}程序运行后的输出结果是A.-1B.0C.1D.721.以下不能输出字符 A 的语句是(注:字符 A 的 ASCII 码值为 65,字符 a 的 ASCII 码值为97)A.printf(‚%c\n‛,’A’-32);B.printf(‚%d\n‛,’A’);C.printf(‚%c\n‛,65);D.printf(‚%c\n‛,’B’-1);22.有以下程序(注:字符 a 的 ASCII 码值为 97)#include <stdio.h>Main(){ char *s={‚abc‛}; Do{printf(‚%d‛,*s%10);++s;}While(*s);}程序运行后的输出结果是A.abcB.789C.7890D.97989823.若有定义语句:double a,*p&a;以下叙述中错误的是A.定义语句中的*号是一个地址运算符B.定义语句中的*号只是一个说明符C.定义语句中的 p 只能存放 double 类型变量的地址D.定义语句中,*p=&a 把变量 a 的地址作为初值赋给指针变量 p24.有以下程序:#include <stdio.h>Double f(double x);Main(){ double a=0; int I; For(i=0;i<30;i+=10)a+=f((double)i); Printf(‚%5.0f\n‛,a);}Double f(double x){return x*x+1;}程序运行后的输出结果是A.503B.401C.500D.140425.若定义语句:int year=2009,*p=&year;,以下不能使变量 year 中的值增至 2010 的语句是A.*p+=1;B.(*p)++;C.++(*p);D.*p++;26.以下定义数组的语句中错误的是A.int num[]={1,2,3,4,5,6};B.int num[][3]={{1,2},3,4,5,6};C.int num[2][4]={{1,2},{3,4},{5,6}};D.int num[][4]={1,2,3,4,5,6};27.有以下程序#include <stdio.h>Void fun(int *p){printf(‚%d\n‛,p[5]);}Main(){int a[10]={1,2,3,4,5,6,7,8,9,10};Fun(&a[3]);}程序运行后的输出结果是A.5B.6C.8D.928. 有以下程序#include<stdio.h>#define N 4Void fun(int a[][N],int b[]) { inti;for(i=0;i<N;i++) b[j]=a[i]][j]-a[i][N,1-i];}Main(){ int x[N][N]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},y[N],i;Fun(x,y);for(i=0;i<N;i++) printf(‚%d‛,y[i]); printf(‚\n‛);程序运行后的输出结果是A.-12,-3,0,0,B.-3,-1,1,3,C.,0,1,2,3,D.-3,-3,-3,-3,29.有以下函数int fun(char *x,char *y){ int n=0;While((*x=*y)&&*x!=’\0’){x++;y++;n++;}Return n;}函数的功能是A.查找 x 和 y 所指字符串中是否有‘\0‘B.统计 x 和 y 所指字符串中最前面连续相同的字符个数C.将 y 所指字符串赋给 x 所值存储空间D.统计 x 和 y 所指字符串中相同的字符个数30.若有定义语句:char *s1=‛OK‛;*s2=‛ok‛;,以下选项中,能够输出‚OK‛的语句是A.if(stremp(s1,s2)==0) puts(s1);B.if(stremp(s1,s2)!=0) puts(s2);C.if(stremp(s1,s2)==1) puts(s1);D.if(stremp(s1,s2)!=0) puts(s1);31.以下程序的主函数中调用了在其前面定义的 fun 函数#include<stdio.h>Main(){double a[15],k; K=fun(a);}则以下选项中错误的fun函数首部是A.double fun(double a[15])B.double fun(double *a)C.double fun(double a[])D.double fun(double a)32.有以下程序:#include<stdio.h>#include<string.h>Main(){ char a[5][10]={‚china‛,‛beijing‛,‛you‛,‛tiananmen‛,‛welcome‛}; Int I,j;char t[10];For(i=0;i<4;i++)For(j=i+1;j<5;j++)If(stremp(a[i],a[j])>0){ strepy(t,a[i]); strepy(a[i],a[j]); strepy(a[i],t);} Puts(a[3]);}程序运行后的输出结果是A.beijingB.chinaC.welcomeD.tiananmen33.有以下程序:#include<stdio.h> Int f(intm){ static int n=0; N+=m;Return n;}Main(){ int n=0; Printf(‚%d,‛,f(++n));Printf(‚%d\n‛,f(n++));程序运行后的输出结果是____________A. 1,2B. 1,1C. 2,3D. 3,334.有以下程序#include<stdio.h>Main(){ char ch[3][5]={‚AAAA‛,‛BBB‛,‛CC‛} Printf(‚%s\n‛,ch[1]);}程序运行后的输出的结果是A.AAAAC.BBBCCD.BBB35.有以下程序#include<stdio.h>#include<string.h> Void fun(char *u,int n){ char x,*y1,*y2; Y1=u;y2=u+n-1;While(y1<y2) {s=*y1;*y1=*y2;*y2=s;p1++;p2--;}}Main(){ char a[]=‛1,2,3,4,5,6‛;Fun(a,strem(a));puts(a);}程序运行后的输出结果是A.654321B.115611C.153525D.12345636.有以下程序#include<stdio.h>#include<string.h>typedef struct{char name[];char sex;int score[2]}STU; STU f(STU i) {STU i={‚Zhao‛,‛m‛,85,90}; Int I;Strcpy(a name,b name); A sex=b sex;For(i=0;i<2;i++) a score[i]=b score[i]; Return a;}Main()STU c={‚Qian‛,‛f‛,95,92},d; D=f(c);Printf(‚%s,%c,%d,%d,‛,,d.sex,d.score[0],d.score[1]);Printf(‚%s,%c,%d,%d\n‛,,c.sex,c.score[0],c.score[1]);}程序运行后的输出结果是A.zhao,m,85,90,Qian,f,95,92B.zhao,m,85,90,zhao,m,85,90C.Qian,f,95,92,Qian,f,95,92D.Qian,f,95,92,zhao,m,85,9037.在以下程序#include<stdio.h>Main(){struct node{int n; struct node *next;}*p; Struct nodex[3]={{2,x+1},{4,x+2},{6,NULL}}; P=x;Printf(‚%d,‛,p>a);Printf(‚%d\n‛,p>next>a);程序运行后的输出结果是A.2,3B.2,4C.3,4D.4,638.有以下程序#include<stdio.h>Main(){ int a=2,b;B=a<<2; printf(‚%d\n‛,b);}程序运行后的输出结果是A.2B.4C.6D.839.以下选项中叙述错误的是A.C程序函数中定义的赋有初始值的静态变量,每调用一次函数,赋一次初值B.在C程序的同一函数中,各复合语句内可以定义变量,其作用域仅限本复合语句内C.C程序函数中定义的自动变量,系统不能自动赋确定的初值D.C程序函数的形参不可以说明为 static 型变量40.有以下程序#include<stdio.h>Main() {FILE *fp;Int k,n,I,a[6]={1,2,3,4,5,6};Fp=fopen(‚d2.dat‛,‛w‛);For(i=0;i<6;i++) fprintf(fp,‛%d\n‛,a[i]);Fclose(fp);Fp=fopen(‚d2.dat‛,‛r‛);For(i=0;i<3;i++) fscanf(fp,‛%d%d‛,&k,&n);Fclose(fp);Printf(‚%d,%d\n‛,k,n);}程序运行后的输出结果是A.1,2B.3,4C.5,6D.123,456二、填空题(每空2分,共30分)1.数据结构分为线性结构与非线性结构,带链的栈属于【1】2.在长度为 n 的顺序存储的线性表中插入一个元素,最坏情况下需要移动表中【2】3.常见的软件开发方法有结构化方法和面向对象方法,对某应用系统经过需求分析建立数据流图(DFD),则应采用【3】方法。

2011年计算机等级二级C语言章节习题及答案(13)

2011年计算机等级二级C语言章节习题及答案(13)

2011年计算机等级二级C语言章节习题及答案(13)2011年计算机等级二级C语言章节习题及答案(13)第13章文件一、选择题(在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上。

)13.1 fseek函数的正确调用形式是A)fseek(文件指针,起始点,位移量)B)fseek(文件指针,位移量,起始点)C)fseek(位移量,起始点,文件指针)D)fseek(起始点,位移量,文件指针)正确答案: B13.2 若fp是指向某文件的指针,且已读到文件末尾,则函数feof (f p)的返回值是A)EOFB)-1C)1D)NULL正确答案: C13.3 fscanf函数的正确调用形式是A)fscanf(fp,格式字符串,输出表列);B)fscanf(格式字符串,输出表列,fp);C)fscanf(格式字符串,文件指针,输出表列);D)fscanf(文件指针,格式字符串,输入表列);正确答案: D13.4 下列关于C语言数据文件的叙述中正确的是A)文件由ASCII码字符序列组成,C语言只能读写文本文件B)文件由二进制数据序列组成,C语言只能读写二进制文件C)文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件D)文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件正确答案: D13.5 函数fseek(pf, OL,SEEK_END)中的SEEK_END代表的起始点是A)文件开始B)文件末尾C)文件当前位置D)以上都不对正确答案: B13.6 C语言中,能识别处理的文件为A)文本文件和数据块文件B)文本文件和二进制文件C)流文件和文本文件D)数据文件和二进制文件正确答案: B13.7 若调用fputc函数输出字符成功,则其返回值是A)EOFB)1C)0D)输出的字符正确答案: D13.8 已知函数的调用形式:fread(buf,size,count,fp),参数buf 的含义是A)一个整型变量,代表要读入的数据项总数B)一个文件指针,指向要读的文件C)一个指针,指向要读入数据的存放地址D)一个存储区,存放要读的数据项正确答案: C13.9 当顺利执行了文件关闭操作时,fclose函数的返回值是A)-1B)TRUEC)0D)1正确答案: C13.10 如果需要打开一个已经存在的非空文件“Demo”进行修改下面正确的选项是A)fp=fopen("Demo","r");B)fp=fopen("Demo","ab+");C)fp=fopen("Demo","w+");D)fp=fopen("Demo","r+");正确答案: D13.11 若要打开A盘上user子目录下名为abc.txt的文本文件进行读、写操作,下面符合此要求的函数调用是A)fopen("A:\user\abc.txt","r")B)fopen("A:\\user\\abc.txt","rt+")C)fopen("A:\user\abc.txt","rb")D)fopen("A:\user\abc.txt","w")正确答案: B13.12 fwrite函数的一般调用形式是A)fwrite(buffer,count,size,fp);B)fwrite(fp,size,count,buffer);C)fwrite(fp,count,size,buffer);D)fwrite(buffer,size,count,fp);正确答案: D13.13 C语言中,文件组成的基本单位为A)记录B)数据行C)数据块D)字符序列正确答案: D13.14 C 语言中,系统的标准输入文件是指A)键盘B)显示器C)软盘D)硬盘正确答案: A13.15 有以下程序#includemain(){ FILE *fp; int i=20,j=30,k,n;fp=fopen("d1.dat","w");fprintf(fp,"%d\n",i);fprintf(fp,"%d\n",j);fclose(fp);fp=fopen("d1.dat","r");fscanf(fp,"%d%d",&k,&n); printf("%d %d\n",k,n);fclose(fp);}程序运行后的输出结果是A)20 30B)20 50C)30 50D)30 20正确答案: A13.16 阅读以下程序及对程序功能的描述,其中正确的描述是#includemain(){ FILE *in,*out;char ch,infile[10],outfile[10];printf("Enter the infile name:\n");scanf("%s",infile);printf("Enter the outfile name:\n");scanf("%s",outfile);if((in=fopen(infile,"r"))==NULL){ printf("cannot open infile\n");exit(0);}if((out=fopen(outfile,"w"))==NULL){ printf("cannot open outfile\n");exit(0);}while(! feof(in))fputc(fgetc(in),out);fclose(in);fclose(out);}A)程序完成将磁盘文件的信息在屏幕上显示的功能B)程序完成将两个磁盘文件合二为一的功能C)程序完成将一个磁盘文件复制到另一个磁盘文件中D)程序完成将两个磁盘文件合并并在屏幕上输出正确答案: C13.17 下面的程序执行后,文件test中的内容是#includevoid fun(char *fname,char *st){ FILE *myf; int i;myf=fopen(fname,"w" );for(i=0;ifclose(myf);}main(){ fun("test","new world"); fun("test","hello,");} A)hello, B)new worldhello,C)new worldD)hello, rld正确答案: A13.18 假定当前盘符下有两个文本文件,如下文件名a1.txt a2.txt内容123# 321#则下面程序段执行后的结果为#include "stdio.h"void fc(FILE *p){ char c;while((c=fgetc(p))!=′#′)putchar(C);}main(){ FILE *fp;fp=fopen("a1.txt","r");fc(fp);fclose(fp);fp=fopen("a2.txt","r");fc(fp);fclose(fp);putchar(′\n′);}A)123321B)123C)321D)以上答案都不正确正确答案: A13.19 阅读下面程序,程序实现的功能是(a123.txt在当前盘符下已经存在)#include "stdio.h"void main(){ FILE *fp;int a[10],*p=a;fp=fopen("a123.txt","w");while(strlen(gets(p))>0 ){ fputs(a,fp);fputs("\n",fp);}fclose(fp);}A)从键盘输入若干行字符,按行号倒序写入文本文件a123.txt 中B)从键盘输入若干行字符,取前2行写入文本文件a123.txt中C)从键盘输入若干行字符,第一行写入文本文件a123.txt中D)从键盘输入若干行字符,依次写入文本文件a123.txt中正确答案: D13.20 阅读下面程序,此程序的功能为#include "stdio.h"main(int argc,char *argv[]){ FILE *p1,*p2;int c;p1=fopen(argv[1],"r");p2=fopen(argv[2],"a");c=fseek(p2,0L,2);while((c=fgetc(p1))!=EOF)fputc(c,p2);fclose(p1);fclose(p2);}A)实现将p1打开的文件中的内容复制到p2打开的文件B)实现将p2打开的文件中的内容复制到p1打开的文件C)实现将p1打开的文件中的内容追加到p2打开的文件内容之后D)实现将p2打开的文件中的内容追加到p1打开的文件内容之后正确答案: C二、填空题(请将每一个空的正确答案写在答题卡相应序号后。

2011浙江省计算机等级考试二级考试技巧、答题原则

2011浙江省计算机等级考试二级考试技巧、答题原则

1、下列叙述中正确的是(A)A. 线性表是线性结构B. 栈与队列是非线性结构C. 线性链表是非线性结构D. 二叉树是线性结构2、数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。

下列图符名标识的图符不属于数据流图合法图符的是(A)A. 控制流B. 加工C. 数据存储D. 源和潭3、以下数据结构中不属于线性数据结构的是(C)A. 队列B. 线性表C. 二叉树D. 栈4、索引属于(B)A. 模式B. 内模式C. 外模式D. 概念模式5、下列关于队列的叙述中正确的是(C)A. 在队列中只能插入数据B. 在队列中只能删除数据C. 队列是先进先出的线性表D. 队列是先进后出的线性表6、下面不属于软件工程的3个要素的是(D)A. 工具B. 过程C. 方法D. 环境7、信息隐蔽的概念与下述哪一种概念直接相关(B)A.软件结构定义B. 模块独立性C. 模块类型划分D. 模拟耦合度8、将E-R图转换到关系模式时,实体与联系都可以表示成(B)A. 属性B. 关系C. 键D. 域9、下列叙述中正确的是(C)A.数据库是一个独立的系统,不需要操作系统的支持B.数据库设计是指设计数据库管理系统C.数据库技术的根本目标是要解决数据共享的问题D.数据库系统中,数据的物理结构必须与逻辑结构一致10、将E-R图转换到关系模式时,实体与联系都可以表示成(B)A. 属性B. 关系C. 键D. 域11、在一棵二叉树上第5层的结点数最多是(B) 注:由公式2(k-1)得A. 8B. 16C. 32D. 1512、索引属于(B)A. 模式B. 内模式C. 外模式D. 概念模式13、对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为(B) 注:要牢记A. N+1B. NC. (N+1)/2D. N/214、在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是(D)A. 概要设计B. 详细设计C. 可行性分析D. 需求分析15、下述关于数据库系统的叙述中正确的是(A)A. 数据库系统减少了数据冗余B. 数据库系统避免了一切冗余C. 数据库系统中数据的一致性是指数据类型的一致D. 数据库系统比文件系统能管理更多的数据16、数据库概念设计的过程中,视图设计一般有三种设计次序,以下各项中不对的是(D)A. 自顶向下B. 由底向上C. 由内向外D. 由整体到局部17、在软件开发中,下面任务不属于设计阶段的是(D)A. 数据结构设计B. 给出系统模块结构C. 定义模块算法D. 定义需求并建立系统模型18、软件需求分析阶段的工作,可以分为四个方面:需求获取、需求分析、编写需求规格说明书以及(B)A. 阶段性报告B. 需求评审C. 总结D. 都不正确19、设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为(B) 注:利用公式n=n0+n1+n2、n0=n2+1和完全二叉数的特点可求出A. 349B. 350C. 255D. 35120、信息隐蔽的概念与下述哪一种概念直接相关(B)A.软件结构定义B. 模块独立性C. 模块类型划分D. 模拟耦合度21、算法的时间复杂度是指(C)A. 执行算法程序所需要的时间B. 算法程序的长度C. 算法执行过程中所需要的基本运算次数 D. 算法程序中的指令条数22、程序流程图(PFD)中的箭头代表的是(B)A. 数据流B. 控制流C. 调用关系D. 组成关系23、将E-R图转换到关系模式时,实体与联系都可以表示成(B)A. 属性B. 关系C. 键D. 域24、下面概念中,不属于面向对象方法的是 (D)A. 对象B. 继承C. 类D. 过程调用25、结构化程序设计主要强调的是(B)A.程序的规模B.程序的易读性C.程序的执行效率D.程序的可移植性26、下面对对象概念描述错误的是(A)A. 任何对象都必须有继承性B. 对象是属性和方法的封装体C. 对象间的通讯靠消息传递D. 操作是对象的动态性属性27、在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。

2011年全国计算机等级二级C语言模拟试题及答案(9)

2011年全国计算机等级二级C语言模拟试题及答案(9)

2011年全国计算机等级二级C语言模拟试题及答案(9)一、选择题1.一个C语言程序是由()构成。

A.语句B.行号C.数据D.函数2.下面标识符中正确的是()。

A.d&efB.6aC.z4x5cD.a3/b43.在C语言中,存储一个字符型、整型、单精度实型变量所需的空间是()。

型、单精度实型变量所需的空间是()。

A.1、2、4B.1、1、4C.1、2、8D.2、2、84.为了避免嵌套的条件分支语句 if--else中的else总是与()组成成对关系。

A. 缩排位置相同的B. 在其之前未配对的C. 在其之前未配对的最近的ifD. 在同一行上的if5.下列表达式的结果正确的是()。

int aa,bb,cc,dd;aa=bb=cc=dd=1;sp; aa=bb=cc=dd=1;sp; aa=bb=cc=dd=1;(aa+1==2)?bb=aa+2:aa+3A.2B.3C. 1D.56.设有int x=11 ;则表达式(x+1/3)的值是()。

A.3B. 4C. 11D.127.设有字符串A=“He has 钱!”,则该字符串的长度为()。

A. 9B. 10C. 11D. 88.有如下程序段,则正确的执行结果是()int m=3;while(m<=5){ printf(“%d”,m-3); m++;}A. 0 0 0B.0 1 2C.1 2 3D.无结果9.执行语句:printf("%d",(a=2)&&(b= -2);后,输出结果是()。

A.无输出B.结果不确定C.-1D. 110.有如下定义类型语句,若从键盘输入数据,正确的输入语句是()。

int x; char y; char z[20];A. scanf("%d%c%c",&x,&y,&z);B. scanf("%d%c%s",&x,&y,&z);C. scanf("%d%c%c",&x,&y,z);D. scanf("%d%c%s",&x,&y,z);11. struct ex{ int x ; float y; char z ;} example;则下面的叙述中不正确的是()。

2010-2016年浙江省高等学校计算机等级考试(二级c语言)理论考试+上机题库

2010-2016年浙江省高等学校计算机等级考试(二级c语言)理论考试+上机题库

理论部分参考答案2010春答案一、1-6DCCB BBAA AADD ABCD DCCB ABCD二、1#include <stdio.h>main(){ int i,a[100];long s=0;for(i=0;i<100;i++){scanf("%d",&a[i]);if(a[i]%2!=0) s=s+a[i];}printf("数组a中的奇数之和为%ld\n",s);}二、2#include <stdio.h>int total(int n){ int i,s=0;for(i=1;i<=n;i++)s=s+i;return s;}main(){ int i,n;float s=0;printf("请输入正整数n:");scanf("%d",&n);for(i=1;i<=n;i++)s=s+1.0/total(i);printf("表达式的值为%f\n",s);}2010秋答案AABB BBAA CDDC CDDC #include <stdio.h>void main(){ int a[100], x, i, count=0 ;printf("Input 100 integers:n");for ( i=0; i<100; i++)scanf("%d", a+i);printf("Input integer x:n");scanf("%d", &x);for ( i=0; i<100; i++)if ( a[i] == x ) count++;printf( "count=%d\n", count);}二、2double fact (int n){ int i ;double s=1 ;for ( i=1; i<=n; i++)s *= i ;return s;}#include <stdio.h>void main(){ double s=0;int n, i ;do scanf("%d", &n); while (n<=0);for ( i=1; i<=n; i++)s += (n-i+1)/fact(i);printf("s=%f\n", s);}11春答案一、ABCD DCBA AABB CCDD CDCD BBAA 二、1 #include<stdio.h>void main(){ int a[100],x,i,s=0;for(i=0;i<100;i++) scanf("%d",&a[i]);scanf("%d",&x);for(i=0;i<100;i++) if(a[i]>=x) s++;printf("%d\n",s);}2 #include<stdio.h>double f(int n){ int i; double s=1;for(i=n;i<=2*n-1;i++) s=s*i;return s; }void main(){ double s=0;int n,i;do scanf("%d",&n); while(n<=0);for(i=1;i<=n;i++) s+=1/f(i);printf("%f\n",s);}11秋答案:一、AAAB CDDC BABB DDCC DCBA DCBA二、1 #include<stdio.h>void main(){ int i,n=0;float a[100];for(i=0;i<100;i++){ scanf(“%f”,&a[i]);if(a[i]<60) n++; }printf(“不及格人数是:%d。

浙江省计算机二级C语言历年试卷

浙江省计算机二级C语言历年试卷

浙江省计算机二级C语言历年试卷一、程序填空(1)找Armstrong(水仙花)数:371=3*3*3+7*7*7+1*1*1b=i%100/10;a*a*a+b*b*b+c*c*c = = i(2)输入1个整数后,输出该数的位数。

(例:输入3214则输出4,输入-23156则输出5)。

n!=0n=n/10(3)求输入的整数各位数字之和,如输入234则输出9,输入-312则输出6。

if (n<0) n=-n;s+=n%10;(4)调用函数f,将一个整数首尾倒置。

例如:若程序输入12345,则输出54321;若程序输入-34567,则输出-76543。

return -y ;m=m/10 ;(5)调用函数f,从字符串中删除所有的数字字符。

strcpyelse(6)调用find函数在输入的字符串中查找是否出现"the"这个单词。

如果查到返回出现的次数,如果未找到返回0。

j=0; j<3; j++j>=3(7)输入的一个小写字母,将字母循环后移5个位置后输出。

例如:"a"变成"f","w"变成"b"。

c>='a'&&c<='u'c=(c-'a'+5)%26+'a';(8)将字符串s中所有的字符'c'删除。

s[i] != '\0'j++;(9)对x=1,2,……,10,求f(x)=x*x-5*x+sin(x)的最大值。

max=f(1);if (f(x)>max) max=f(x);(10)输入三个整数,按由小到大的顺序输出这三个数。

int *pa, int *pbif ( a>b )(11)调用函数f,去除数组中的负数,输入数组x[7],输出结果为:1 3 4 6*m = *m-1;f (x, &n) ;(12)调用函数f计算代数多项式1.1+2.2*x+3.3*x*x+4.4*x*x*x+5.5*x*x*x*x当x=1.7时的值。

2011浙江省计算机等级考试试题 二级C试题考试题库

2011浙江省计算机等级考试试题 二级C试题考试题库
42、以平均无故障时间(MTBF),用于描述计算机的( A )
A、可靠性 B、可维护性 C、性能价格比 D、以上答案都不对
43、在计算机应用中,“计算机辅助制造”的英文缩写为( A )
A、CAD B、CAM C、CAE D、CAT
22、在计算机的应用中,“OA”表示( C)
A、管理信息系统 B、决策支持系统
C、办公自动化 D、人工智能
23、计算机的内存中有一项占据4个字节的数据,内容依次为61H、41H、31H、51H,这项数据可能是( C )
17、LINUX是一种( B )
A、数据库管理系统 B、微机操作系统
C、字处理系统 D、鼠标器驱动程序
18、静态RAM的特点是( A )
A、在不断电的条件下,其中的信息保持不变,因而不必定期刷新
B、在不断电的条件下,其中的信息不能长时间保持,因而必须定期刷新才不致丢失信息
33、为了防止计算机硬件的突然故障或病毒入侵对数据的破坏,对于重要的数据文件和工作资料在每天工作结束后通常应( B )
A、直接保存在硬盘之中 B、用专用设备备份
C、打印出来 D、压缩后存储到硬盘中
34、激光打印机的特点是( B )
31、在计算机领域中,通常用英文单词“bit”来表示( C )
A、字 B、字长 C、二进制位 D、字节
32、软磁盘格式化时,被划分为一定数量的同心圆磁道,软盘上最外圈的磁道是( A )
A、0磁道 B、39磁道 C、1磁道 D、80磁道
A、字节 B、编号 C、地址 D、容量
7、软件系统主要由( B )
A、操作系统和数据库管理系统组成 B、系统软件和应用软件组成
C、应用软件和操作系统组成 D、系统软件和操作系统组成

计算机国家等级考试二级c试题及答案

计算机国家等级考试二级c试题及答案

计算机国家等级考试二级c试题及答案Ⅰ. 选择题1. 下列选项中,不属于计算机网络分类的是:A. 局域网B. 城域网C. 广域网D. 互联网2. 在Excel中,通过哪个函数可以找到一列或一行中的最大值?A. MAX()B. MIN()C. SUM()D. AVG()3. 下列哪个设备可以用于将数字信号转换为模拟信号?A. 集线器B. 路由器C. 数字调制解调器D. 交换机4. 在计算机网络中,HTTP协议是用于:A. 文件传输B. 邮件传输C. 网页传输D. 数据传输5. 下列选项中,不属于常见的数据库管理系统的是:A. MySQLB. OracleC. PhotoshopD. SQL ServerⅡ. 填空题1. 在计算机网络中,IP地址由__4__个字节组成。

2. 在Python中,使用__print()__函数输出结果。

3. 在Excel中,利用__VLOOKUP()__函数可以进行垂直查找。

4. Windows操作系统中,使用Ctrl+Alt+Delete组合键可以打开__任务管理器__。

5. HTML是用于构建__网页__的标记语言。

Ⅲ. 简答题1. 什么是操作系统?列举几个常见的操作系统。

操作系统是计算机系统中的核心软件,它负责管理计算机硬件和软件资源,提供给应用程序和用户友好的接口。

常见的操作系统有Windows、macOS、Linux等。

2. 什么是数据库?简述关系型数据库和非关系型数据库的区别。

数据库是用于存储和组织数据的系统。

关系型数据库基于关系模型,使用表格结构来存储数据,并通过SQL语言进行操作和查询。

非关系型数据库则不依赖于表格结构,可以采用键值对、文档、图形等方式存储数据。

3. 请简要介绍一下计算机网络的层次结构。

计算机网络的层次结构包括物理层、数据链路层、网络层、传输层和应用层。

物理层负责传输比特流;数据链路层处理帧的传输和错误检测;网络层建立不同网络之间的连接;传输层提供可靠的、面向连接的数据传输;应用层为用户提供服务。

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

2011年上半年浙江省高等学校计算机等级考试二级C试卷及答案2011年上半年浙江省高等学校计算机等级考试二级C程序设计试卷说明:⑴本试卷共6页,满分100分;考试时间为90分钟;⑵考生应将所有试题的答案填写在答卷上;⑶程序阅读与填空全部是选择题,请在答卷上的各小题选项的对应位置上填“√”;⑷请将你的准考证号的后五位填写在答卷右下角的指定位置内。

一、程序阅读与填空(24小题,每小题3分,共72分)1.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序说明】输入正整数n,计算并输出1/2+2/3+3/5+5/8+…的前n项之和,保留2位小数。

(该序列从第2项起,每一项的分母是前一项分子与分母的和,分子是前一项的分母)【程序】#includevoid main(){ int i,n;double denominator,numerator,sum,temp;scanf("%d",&n);numerator=1;denominator=2;sum=0;for(i=1; (1);i++){sum=sum+ (2);temp=denominator;(3);(4);}printf("sum=%.2f\n",sum);}【供选择的答案】(1)A、i<=n B、i=n D、i>n(2)A、denominator/numerator B、numerator/ denominatorC、denominatorD、numerator(3)A、numerator= numerator+ denominatorB、denominator=numeratorC、denominator= numerator+ denominatorD、denominator=temp(5)A、denominator=temp B、denominator=numeratorC、numerator= denominatorD、numerator=temp2.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序说明】输出150到200之间有且只有一位数字为9的所有整数。

要求定义和调用函数is(n,digit)判断正整数n是否有且只有一位数字为digit,,若满足条件则返回1,否则返回0。

运行示例:159 169 179 189 190 191 192 193 194 195 196 197 198【程序】#includevoid main(){ int i;int is(int n,int digit);for(i=150;i<=200;i++)if( (5)) printf("%d ",i);printf("\n");}int is(int n,int digit){int count=0;do{if( (6)) count++;n=n/10;}while( (7));if( (8)) return 1;else return 0;}【供选择的答案】(5)A、!is(n,digit) B、is(i,9)==0 C、is(n,9)!=0 D、is(i,9)!=0 (6)A、n%10==9 B、n==digit C、n%10==digit D、n/10==digit (7)A、n/10!= 0 B、n!=0 C、n%10!=0 D、n==0 (8)A、count==1 B、count!=1 C、count!=0 D、count==0 3.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序说明】输入一个以回车结束的字符串(少于10个字符),将其中的数字字符转换为整数输出。

要求定义和调用函数atoi(s),该函数将字符串s 转换为整数。

运行示例:Enter a string:1+2=3The integer:123【程序】#includeint atoi(char *s){int i,sum=0;for(i=0; (9) ;i++)if(s[i]>='0' && s[i]<='9')(10) ;return sum;}void main(){ int i;char s[80];printf("Enter a string:");while((s[i]=getchar())!='\n')i++;(11)printf("The integer:%d\n", (12) );}【供选择的答案】(9)A、s[i]!=’\0’B、s[i]=’\0’C、i(10)A、sum=sum*10+(s[i]-‘0’) B、sum=sum+s[i]C、sum=sum*10+s[i]D、sum=sum+s[i]-‘0’(11)A、s[i]!=’\0’; B、s[i]= '\0';C、;D、i--;(12)A、sum B、atoi(s)C、atoi(char *s)D、atoi(*s)4.阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序】#include#define T(c) (c==c==c)double f1( ){int x;return x=7%4;}void f2(int n){for(;n>=1;n--)printf("%2d",n%3);printf("\n");}double f3(int n){if(n==1) return 1.0;else return n+f3(n-1);}void main(){printf("%d %d\n",T(5),T(1));printf("%.1f\n",f1());f2(4);printf("%.1f\n",f3(3));}【问题】(13)程序运行时,第1行输出(13)。

A、1 0B、0 0C、0 1D、1 1(14)程序运行时,第2行输出(14)。

A、1.0B、1C、3.0D、3(15)程序运行时,第3行输出(15)。

A、0 2 1 0B、1 0 2 1 0C、1 0 2D、1 0 2 1(16)程序运行时,第4行输出(16)。

A、1.0B、10.0C、3. 0D、6.05.阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序】程序1#includevoid main(){int i,j,n=5;for(i=2;i<=n;i++){for(j=1;j<=i;j++)printf("%d ",i);putchar('\n');}}程序2#includevoid main(){char str[80];int i;gets(str);for(i=0;str[i]!='\0';i++)if(str[i]<='Z' && str[i]>='A')str[i]='a'+'Z'-str[i];puts(str);}【问题】(17)程序1运行时,第1行输出(17)。

A、1B、4 4 4 4C、2 2D、3 3 3(18)程序1运行时,第2行输出(18)。

A、1B、4 4 4 4C、2 2D、3 3 3(19)程序2运行时,输入YEAR,输出(19)。

A、yearB、BVZIC、bvziD、YEAR(20)程序2运行时,输入sz,输出(20)。

A、flagB、UOZTC、FLAGD、uozt6.阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序】#includevoid main(){int i,j;char *s[4]={"apple","fruit","berry","orange"};for(i=0;i<4;i++)for(j=1;j<=i;j++)printf("%s\n",s[i]+j);}【问题】(21)程序运行时,第1行输出(21)。

A、appleB、ruitC、fruitD、pple(22)程序运行时,第2行输出(22)。

A、rryB、erryC、ruitD、uit(23)程序运行时,第3行输出(23)。

A、rryB、angeC、uitD、ple(24)程序运行时,第4行输出(24)。

A、rangeB、geC、ryD、ange二、程序编写(每题14分,共28分)1.输入100个整数,将它们存入数组成a中,再输入一个整数x,统计并输出数组a中不小于x的元素个数。

2.按下面要求编写程序:(1)定义函数f(n)计算n*(n+1)*…*(2n-1),函数返回值类型是double。

(2)定义函数main(),输入正整数n ,计算并输出下列算式的值。

要求调用函数f(n)计算n*(n+1)*…*(2n-1)。

)12(**)1(*15*4*313*211-+++++=n n n s一、程序阅读与填空(24小题,每小题3分,共72分)1. A B C D2. D C B A3. A A B B4. C C D D5. C D C D6. B B A A 二、程序编写(每题14分,共28分)1. #include#define N 100void main(){ int a[N], x, i, count=0 ;for ( i=0; i< N; i++) scanf(”%d”, a+i);scanf(”%d”, &x);for ( i=0; i< N; i++) if ( a[i] >= x ) count++;printf( ”count=%d \n”, count); }2. double f(int n){ int i ; double s=1 ;for ( i=n; i <= 2*n-1; i++) s=s*i ; return s; }#includevoid main(){ double s=0; int n, i ;do scanf("%d", &n); while (n<=0); for ( i=1; i<=n; i++) s += 1/f(i); printf("s=%f\n", s); }。

相关文档
最新文档