福建省计算机二级c语言选择题题库2011
二级C语言真题2011年09月.
2011年9月全国计算机等级考试二级笔试试卷C语言程序设计一、选择题下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。
(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)7 B)6 C)3 D)2(6)程序调试的任务是( )。
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)以下叙述中错误的是( )。
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年全国计算机等级二级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;则下面的叙述中不正确的是()。
福建省计算机2级C语言 精确版题库
福建省计算机2级C语言精确版题库福建省计算机2级c语言精确版题库第一部分:选择题(40分,20小题/套)概述1、下面关于c语言的描述中,恰当的就是(d)a.每行只能写一条语句b.程序中必须包含有输入语句c.main函数必须坐落于文件的结尾d.每条语句最后必须存有一个分号2、下面关于c语言的叙述中,错误的是(b)a.若一条语句较长,也可分写在下一行上b.构成c语言源程序的基本单位是表达式c.c语言源程序中大、小写字母是有区别的d.一个c语言源程序可由一个或多个函数组成3、关于c语言数据类型的叙述,正确的是(c)a.枚举类型不是基本类型b.数组不是构造类型c.变量必须先定义后使用d.不允许使用空类型4、c程序中main函数的位置(b)a.必须在最为已经开始b.必须在系统库函数后面c.可以在自定义函数后面d.必须在最后5、c语言的函数体由(b)内加出来a.()b.{}c.[]d./**/6、关于c语言的描述中,不恰当的就是(d)a.c程序可由一个或多个函数组成b.c程序必须包含1一个main()函数c.c程序的基本共同组成单位就是函数d.注解表明就可以坐落于一条语句的后面7、一个程序的执行是从(b)a.本程序的第一个函数已经开始,至最后一个函数完结b.本程序的main函数已经开始,至main函数完结c.本程序的main函数已经开始,至最后一个函数完结d.本程序的第一个函数已经开始,至main函数完结8、结构化程序设计的三种基本结构就是(c)a.函数结构、分支结构、判断结构b.函数结构、嵌套结构、平行结构c.顺序结构、分支结构、循环结构d.分支结构、循环结构、嵌套结构9、调试程序是指对程序进行(c)a.编辑b.编程c.查错和排错d.相连接10、c语言中,无机语句的形成就是将一系列语句放在(c)a.begin与end之间b.一对圆括号“()”之间c.一对花掉括号“{}”之间d.一对方括号“[]”之间11、形成c语言源程序的基本单位就是(d)a.语句b.过程c.表达式d.函数语法基础212、在c语言中,正确的用户标识符是(b)a.3fb._forc.structd._f.513、c语言的基本数据类型包含(a)a.整型、实型、字符型b.整型、实型、字符型、逻辑型c.整型、字符型、逻辑型d.整型、实型、逻辑型14、以下(d)是正确的常量a.e-5b.1e5.1c.?a12?d.32766l15、以下(d)是正确的变量名a.a.beeb.cp11c.intd.p_1116、以下(c)就是恰当的字符常量a.“c”b.?//”c.?w?d.“\\32a”17、以下(a)是不正确的字符串常量a.?abc?b.“12?12”c.“0”d.““18、c语言的整型数据在内存中的存储形式就是(d)a.原码b.反码c.补码d.ascii码19、以下(b)是正确的浮点数a.e3b..62c.2e4.5d.123320、以下不属于c语言关键字的就是(b)a.continueb.integerc.staticd.signed21、c语言的字符型数据在内存中的存储形式就是(b)a.原码b.补码c.反码d.ascii22、在c语言中,变量所分配的内存空间大小就是(a)a.由变量的类型同意b.由用户自己同意c.任一的d.均为两个字节23、若存有定义:inta=2;则恰当的赋值表达式就是(a)a.a-=(a*3)b.double(-1)c.a*3d.a*4=324、语句x=(a=3,b=++a);运行后,x、a、b的值依次为(c)a.3,3,4b.4,4,3c.4,4,4d.3,4,325、语句a=(3/4)+3%2;运行后,a的值为(b)a.0b.1c.2d.326、以下四项中,合乎c语言语法的语句就是(c)a.inta+b=c;b.inta=12:b=12:c=12;c.inta=12,b=12,c=12;d.inta,b=12,floatc=2127、若存有定义:intx,a;则语句x=(a=3,a+1);运转后,x、a的值依次为(c)a.3,3b.4,4c.4,3d.3,428、若变量已恰当定义并赋值,合乎c语言语法的表达式就是4(a)a.a=8+b+c,a++b.a=3ac.int(12.3%4)d.a=a+1=c+b29、若存有定义:inta,b;doublex;则以下不合乎c语言语法的表达式就是(a)a.x%(-3)b.a+=-1c.a=b=2d.x=a+b30、若存有定义:intx=2,y=3;floati;则以下合乎c语言语法的表达式就是(b)a.x=x*3=2b.x=(y==1)c.i=float(x)d.i%(-3)31、若存有定义:intx;则语句x=(2*3)+6%5;运转后,x的值就是(b)a.8b.7c.6d.532、下面关于c语言变量的描述中,错误的就是(c)a.可以用const关键字定义变量b.在c程序中,sum和sum就是相同的变量c.变量名必须由字母或下划线组成d.变量的类型确定了变量的取值范围33、若存有定义:intx=5,y=6;则表达式x=(y==6)的值(b)a.5b.1c.6d.034、下面描述恰当的就是(b)5。
2011福建省计算机等级考试试题 二级C试题最新考试试题库
1、在结构化方法中,软件功能分解属于下列软件开发中的阶段是(C) 注:总体设计也就是概要设计A. 详细设计B. 需求分析C. 总体设计D. 编程调试2、数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。
下列图符名标识的图符不属于数据流图合法图符的是(A)A. 控制流B. 加工C. 数据存储D. 源和潭3、数据的存储结构是指(B)A. 数据所占的存储空间量B. 数据的逻辑结构在计算机中的表示C. 数据在计算机中的顺序存储方式D. 存储在外存中的数据4、关系数据库管理系统能实现的专门关系运算包括(B)A. 排序、索引、统计B. 选择、投影、连接C. 关联、更新、排序D. 显示、打印、制表5、下列关于队列的叙述中正确的是(C)A. 在队列中只能插入数据B. 在队列中只能删除数据C. 队列是先进先出的线性表D. 队列是先进后出的线性表6、以下数据结构中不属于线性数据结构的是(C)A. 队列B. 线性表C. 二叉树D. 栈7、在下列选项中,哪个不是一个算法一般应该具有的基本特征(C)A. 确定性B. 可行性C. 无穷性D. 拥有足够的情报8、下面不属于软件设计原则的是(C)A. 抽象B. 模块化C. 自底向上D. 信息隐蔽9、数据库系统的核心是(B)A. 数据模型B. 数据库管理系统C. 软件工具D. 数据库10、在关系数据库中,用来表示实体之间联系的是(D)A. 树结构B. 网结构C. 线性表D. 二维表11、数据的存储结构是指(B)A. 数据所占的存储空间量B. 数据的逻辑结构在计算机中的表示C. 数据在计算机中的顺序存储方式D. 存储在外存中的数据12、在软件开发中,下面任务不属于设计阶段的是(D)A. 数据结构设计B. 给出系统模块结构C. 定义模块算法D. 定义需求并建立系统模型13、数据库系统的核心是(B)A. 数据模型B. 数据库管理系统C. 软件工具D. 数据库。
福建省计算机等级考试(二级C语言)-答案
福建省计算机等级考试(二级C语言)-答案选择题答案1.D2.B3.C4.C5.B6.D7.B8.C9.C 10.C11.D 12.B 13.A 14.D 15.D 16.C 17.A 18.C 19.B 20.B 21.D 22.A 23.A 24.C 25.B 26.C 27.C 28.A 29.A 30.B 31.B 32.C 33.B 34.B 35.A 36.A 37.C 38.C 39.C 40.B 41.B 42.A 43.C 44.C 45.D 46.B 47.B 48.B49.C50.D51.A52.A 53.D 54.B55.A56.B 57.B 58.A 59.A60.A61.A 62.C 63.D 64.A65.D66.D 67.A 68.A 69.A70.D71.B 72.D 73.A 74.B75.C76.C 77.A 78.D 79.B80.B81.C 82.D 83.D 84.C85.C86.D 87.A 88.D 89.A90.D91.A 92.B 93.A 94.D95.A96.C 97.B 98.C 99.D 100.B101.A 102.C 103.B 104.B 105.C 106.D 107.C 108.A 109.A 110.C 111.A 112.B 113.C 114.A 115.A 116.C 117.D 118.C 119.A 120.A 121.D 122.B 123.D 124.C 125.B 126.C 127.B 128.C 129.A 130.B 131.D 132.A 133.D 134.A 135.C 136.B 137.D 138.B 139.D 140.D 141.B 142.A 143.B 144.C 145.B 146.A 147.C 148.A 149.C 150.D 151.C 152.B 153.B 154.B 155.D156.C 157.C 158.A 159.C 160.B 161.D 162.A 163.B 164.B 165.D 166.D 167.B 168.C 169.D 170.B 171.B 172.A 173.A 174.A175.D 176.A 177.B 178.C 179.B 180.C 181.C 182.D 183.D184.D 185.D 186.D 187.D199.A 200.A201.C 202.B 203.C 204.D 205.B 206.C 207.C 208.B 209.B 210.C 211.A 212.C 213.A 214.D 215.C 216.B 217.C 218.D 219.A 220.D 改错题答案第1套1./**/j=0;/**//**/if((str1[i]%2==0)&&(i%2==0))/**/ 2./**/if((i>10)&&(i%3==0))/**//**/y+=1.0/i;/**/第2套1./**/int i,j;/**//**/ for(j=1;j<=2*i-1;j++)/**/2./**/int fun()/**//**/if(cock+hen+chicken==100)/**/ 第3套1./**/char ch;/**//**/switch (ch)/**/2./**/if(m%i==0)/**//**/if(i>k)/**/ 或/**/if(i==k+1)/**/ 第4套1./**/int i,len,sum=0;/**//**/if(str1[i]>='a'&&str1[i]<='z')/**/ 2./**/&a[i]/**//**/for(i=M-1;i>=0;i--)/**/第5套1./**/char str1[128];/**//**/sum++;/**/2./**/#define M 5/**//**/if(a[i]%2==0)/**/第6套1./**/for(i=0;i<="" p="">/**/str2[i]='\0';/**/2./**/ps2=s2;/**//**/while(*ps1!=NULL)/**/ 或/**/while(*ps1)/**/ 第7套1./**/&a[i]/**//**/if(a[0]+a[1]>a[2]&&a[1]+a[2]>a[0]&&a[0]+a[2]>a[1])/**/2./**/int fun()/**//**/if(large+middle+small==100)/**/ 第8套1./**/for(i=100;i<200;i++)/**//**/i/**/2./**/void swap(int *p1,int *p2)/**//**/*p1=*p2;/**/第9套1、/**/int a=0,c=0; /**//**/for(i=0;i<=100;i+=2)/**/2、/**/for(z=0;z<10;z++)/**//**/if(i= =result) /**/第10套1、/**/float s;/**//**/&c/**//**/ s=F(a)+F(b)-F(c); /**/2、/**/t=n/100;/**//**/if(t*t*t+s*s*s+f*f*f= =n)/**/ 第11套1、/**/int i,j; /**//**/for(i=6;i>=1;i--)/**/printf(/**/"\n"/**/);填空题答案第1套1、/**/float f; /**/f = /**/ (abs(x)-2.0)/(x*x+1)/**/ ; 2、sign=/**/-sign/**/;pi*=/**/ 4 /**/;3、for(q=p; qif(/**/ max<*q /**/ ) max=*q;find_max_min(/**/ num /**/,10);第2套1、int plu = /**/403; /**/k = (a*10+b) * /**/(b*10+a) /**/ ;2、/**/a=b=0; /**/while(/**/n!=0 /**/)else /**/ b++; /**/3、if (n%k==0) { flag=/**/0 /**/ ; break;} if(prime(a) && prime(/**/num-a /**/))第3套1、/**/main() /**/}/**/ while /**/(fabs(x-x0)>=1e-6);2、for(i=0;s[i]!='\0';/**/i++ /**/)else if(/**/s[i]>='A'&&s[i]<='Z' /**/) 3、/**/float avg=0.0; /**/avg = avg+/**/ pa[k] /**/;m=average(/**/a /**/, 5);第4套1、/**/#include /**//**/char /**/ str[11];2、for(i=0;iif/**/ (a[j]<="" p="">a[j]=/**/ a[j+1] /**/;3、int fun(/**/float a,float b,float c /**/if(fabs(/**/ a*a /**/-(b*b+c*c))<1.0e-15)第5套1、scanf("%d",/**/ &x /**/);printf("%d*%d=%d\n",x,x,/**/ x*x /**/);2、for(j=i+1;jif(a[j]<="" k="j" p="">a[i]=/**/ t /**/;3、/**/ float /**/ fun(float a,float b,float c) s=/**/ (a+b+c)/2 /**/; 第6套1、int i,/**/ j /**/;sum=/**/ 0 /**/;/**/ sum+=a[i][0]; /**/2、int fun(int a[],int n,/**/int q /**/){ mid=/**/ (left+right)/2 /**/;3、int fun(/**/ float r /**/,float x,float y) bIn=/**/ sqrt(x*x+y*y) /**/<r;< p="">第7套1、/**/ #include /**//**/ return x*x-2*x+6; /**/y2=fun(/**/ sin(x) /**/);2、/**/p=p*i; /**//**/p=p/i; /**/3、printf("The max is %d\n",/**/ findmax(a,10) /**/);int i,/**/ max=array[0] /**/;第8套1、unsigned i,/**/sum=0; /**//**/ return sum; /**/printf("\nThe sum is %d\n",/**/ sum(m) /**/);2、char str[]="1234567",/**/ k /**/;for(i=0,/**/ j=strlen(str)-1 /**/;i<j;i++,j--)< p="">3、/**/STU temp; /**/if(/**/ ps[i].num>ps[i+1].num /**/)if(/**/ flag==0 /**/) break;第9套1、/**/ max=min=a[0][0]; /**/if(/**/ a[i][j]>max /**/)/**/ min=a[i][j]; /**/2、int t=0,/**/ s=0 /**/,i;t=/**/ t*10+i /**/;3、/**/ return 1; /**/return /**/ fib(n-1)+fib(n-2) /**/;第10套1、/**/struct stu /**/ stu[3]={"Mary",76,"John",85,"T om",81 };total=total+/**/ stu[i].score /**/;2、min2=a[0]>a[1]?/**/a[0]:a[1]; /**//**/ min2=a[i]; /**/3、/**/double mysqrt(double,double); /**/ x1=/**/ (x0+a/x0)/2; /**/y=mysqrt(/**/a,x1 /**/);第11套1、#define /**/ N 20/**//**/flag=0;/**//**/m++;/**/2、/**/s=1;tem=1;/**// for(i=1; **/i<=m/**/;i++) 3、aver=/**/sum/N;/**/return(/**/c/**/);cn=/**/count/**/(score);编程题答案第1套1.double fun1(double x){/**/double y=0.0;y=(1+sin(x)+exp(x))/(1+x); return y; /**/2.int fun2(int a[], int n, int b[],int c[]) { /**/int i,len,j,k,temp;for(i=0,len=0;i<n;i++)< p="">if(a[i]>-20)b[len++]=a[i];for(i=0;i<len;i++)< p="">c[i]=b[i];for(i=0;i<len-1;i++)< p="">{k=i;for(j=i+1;j<8;j++)if(c[k]>c[j]) k=j;if(k!=i){temp=c[i];c[i]=c[k];c[k]=temp;}return len;/**/}第2套1.double fun1(double x){/**/double y=0.0;y=(exp(x)+fabs(x-6))/(x+1.3); return y;/**/}2.void fun2(char a[],char b[],char c[]) {/**/char temp[15];if(strcmp(a,b)>0)strcpy(temp,a); strcpy(a,b); strcpy(b,temp); }if(strcmp(b,c)>0) {strcpy(temp,b); strcpy(b,c); strcpy(c,temp); }if(strcmp(a,b)>0) {strcpy(temp,a); strcpy(a,b); strcpy(b,temp); }/**/}第3套1.double fun1(double x) {/**/double y=0.0;if(x<3) y=1.2; else if(x==3) y=10; else y=2*x+1; return y; /**/}2.int fun(char *s){int n=0;while(*s){if(*s==' ')n++;s++;}return n;第4套1.double f(float x){/**/double y=0.0;if(x<=0) y=0;else y=(fabs(x)+3.2)/(sin(x)+2); return y; /**/}2.double fun(int a[],int m){/**/int i;a[0]=a[1]=1;for(i=2;i<m;i++)< p="">a[i]=a[i-1]+a[i-2];/**/</m;i++)<></len-1;i++)<> </len;i++)<> </n;i++)<></j;i++,j--)<> </r;<>。
福建省省计算机二级选择题题库C语言
51001.以下数组定义中,正确的是()。
AA)int a[5]={0};B)int a[]={0 1 2};C)int a[5]=0;D)int a[];51002.下列数组定义中,正确的是().AA)int a[10];B)int n=10,a[n];C)int N=10;int a[N];D)int n;scanf("%d",&n); int a[n]; 51003.已知int a[10];则对a数组元素引用不正确的是().AA)a[10]B)a[3+5]C)a[10-10]D)a[5]51004.若有定义:int a[3]={0,1,2};则a[1]的值为()。
BA)0B) 1C) 2D) 351005.若有定义:int a[5]={1,2,3,4,5};则语句a[1]=a[3]+a[2+2]-a[3-1];运行后a[1]的值为()。
AA) 6B) 5C) 1D) 251006.以下能对一维数组a进行正确初始化的语句是()。
DA)int a[5]=(0,0,0,0,0);B)int a[5]=[0];C)int a[5]={1,2,3,4,5,6,7};D)int a[]={0};51007.下面程序段的运行结果是()。
Dint i=0,a[]={3,4,5,4,3};do{a[i]++;}while(a[++i]<5);for(i=0;i<5;i++)printf("%d ",a[i]);A) 4 5 6 5 4B) 3 4 5 4 3 C) 4 5 5 5 4D) 4 5 5 4 351008.下面程序段的运行结果是()。
Cint i=0,a[]={7,5,7,3,8,3};do{a[i]+=2;}while(a[++i]>5);for(i=0;i<6;i++)printf("%d ",a[i]);A)9 7 9 5 10 5B)9 5 9 3 10 3C)9 5 7 3 8 3D)7 5 7 3 8 351009.下面程序段的运行结果是()。
2011年计算机等级二级C语言笔试题及答案
2011年计算机等级二级C语言笔试题及答案(1)计算机等级考试网更新:2011-6-19 编辑:风清云淡一、填空题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. 10 10B. 9 9C. 9 10D. 10 94、设A为存放(短)整型的一维数组,如果A的首地址为P,那么A中第i 个元素的地址为()。
2011年3月计算机二级考试c语言试题及答案详细解析
2011年3月计算机二级考试c 语言试题及答案详细解析2011年3月全国计算机等级考试二级笔试试卷C语言程序设计(考试时间90分钟,满分100分)一、选择题(1-10,21-40每题2分,11-20每题1分,共70分)(1)下列关于栈叙述正确的是A)栈顶元素最先能被删除B)栈顶元素最后才能被删除C)栈底元素永远不能被删除D)以上三种说法都不对(2)下列叙述中正确的是A)有一个以上根结点的数据结构不一定是非线性结构B)只有一个根结点的数据结构不一定是线性结构C)循环链表是非线性结构D)双向链表是非线性结构(3)某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为(假设根结点在第1层)A)3 B)4 C)6 D)7(4)在软件开发中,需求分析阶段产生的主要文档是A)软件集成测试计划 B)软件详细设计说明书C)用户手册 D)软件需求规格说明书(5)结构化程序所要求的基本结构不包括A)顺序结构 B)GOTO跳转C)选择(分支)结构 D)重复(循环)结构(6)下面描述中错误的是A)系统总体结构图支持软件系统的详细设计B)软件设计是将软件需求转换为软件表示的过程C)数据结构与数据库设计是软件设计的任务之一D)PAD图是软件详细设计的表示工具(7)负责数据库中查询操作的数据库语言是A)数据定义语言B)数据管理语言C)数据操纵语言A)a=(b=4)=3; B)a=b=c+1;C)a=(b=4)+c; D)a=1+(b=c=4);(16)有以下程序段char name[20];int num;scanf("name=%s num=%d",name;&num);当执行上述程序段,并从键盘输入:name=Lili num=1001<回车>后,name 的值为A)Lili B)name=Lili C)Lili num= D)name=Lili num=1001(17)if语句的基本形式是:if(表达式)语句,以下关于“表达式”值的叙述中正确的是A)必须是逻辑值 B)必须是整数值C)必须是正数 D)可以是任意合法的数值(18)有以下程序#includemain(){ int x=011;printf("%d\n",++x);}程序运行后的输出结果是A)12 B)11 C)10 D)9(19)有以下程序#includemain(){ int s;scanf("%d",&s);while(s>0){ switch(s){ case1:printf("%d",s+5);case2:printf("%d",s+4); break;case3:printf("%d",s+3);default:printf("%d",s+1);break;}scanf("%d",&s);}}运行时,若输入1 2 3 4 5 0<回车>,则输出结果是A)6566456 B)66656 C)66666 D)6666656(20)有以下程序段int i,n;for(i=0;i<8;i++){ n=rand()%5;switch (n){ case 1:case 3:printf("%d\n",n); break;case 2:case 4:printf("%d\n",n); continue;case 0:exit(0);}printf("%d\n",n);}以下关于程序段执行情况的叙述,正确的是A)for循环语句固定执行8次 B)当产生的随机数n为4时结束循环操作C)当产生的随机数n为1和2时不做任何操作D)当产生的随机数n为0时结束程序运行(21)有以下程序#includemain(){ char s[]="012xy\08s34f4w2";int i,n=0;for(i=0;s[i]!=0;i++)if(s[i]>='0'&&s[i]<='9') n++;printf("%d\n",n);}程序运行后的输出结果是A)0 B)3 C)7 D)8(22)若i和k都是int类型变量,有以下for语句for(i=0,k=-1;k=1;k++) printf("*****\n");下面关于语句执行情况的叙述中正确的是A)循环体执行两次B)循环体执行一次C)循环体一次也不执行D)构成无限循环(23)有以下程序#includemain(){ char b,c; int i;b='a'; c='A';for(i=0;i<6;i++){ if(i%2) putchar(i+b);else putchar(i+c);} printf("\n");}程序运行后的输出结果是A)ABCDEF B)AbCdEf C)aBcDeF D)abcdef(24)设有定义:double x[10],*p=x;,以下能给数组x下标为6的元素读入数据的正确语句是A)scanf("%f",&x[6]); B)scanf("%lf",*(x+6));C)scanf("%lf",p+6); D)scanf("%lf",p[6]);(25)有以下程序(说明:字母A的ASCII码值是65)#includevoid fun(char *s){ while(*s){ if(*s%2) printf("%c",*s);s++;}}main(){ char a[]="BYTE";fun(a); printf("\n");}程序运行后的输出结果是A) BY B) BT C) YT D) YE(26)有以下程序段#includemain(){ …while( getchar()!='\n');…}以下叙述中正确的是A)此while语句将无限循环B) getchar()不可以出现在while语句的条件表达式中C)当执行此while语句时,只有按回车键程序才能继续执行D)当执行此while语句时,按任意键程序就能继续执行(27)有以下程序#includemain(){ int x=1,y=0;if(!x) y++;else if(x==0)if (x) y+=2;else y+=3;printf("%d\n",y);}程序运行后的输出结果是A)3 B)2 C)1 D) 0(28)若有定义语句:char s[3][10],(*k)[3],*p;,则以下赋值语句正确的是A)p=s; B)p=k; C)p=s[0]; D)k=s;(29)有以下程序#includevoid fun(char *c){ while(*c){ if(*c>='a'&&*c<='z') *c=*c-('a'-'A');c++;}}main(){ char s[81];gets(s); fun(s); puts(s):}当执行程序时从键盘上输入Hello Beijing<回车>,则程序的输出结果是A)hello beijing B)Hello Beijing C)HELLO BEIJING D)hELLO Beijing(30)以下函数的功能是:通过键盘输入数据,为数组中的所有元素赋值。
福建省计算机二级c语言选择题题库(1)
D. a=a+a=a+3
A
58.设单精度型变量f、g的值均为2.0,使f为4.0的表达式是()。
A. f+=g
B. f-=g+2
C. f*=g-6
D. f/=g*10
A
59.若有定义:float x=3.5;int z=8;则表达式x+z%3/4的值为()。
A. 3.75
B. 3.5
A.可以有空语句
B.函数之间是平等的,在一个函数内部不能定义其它函数
C.程序调试时如果没有提示错误,就能得到正确结果
D.注释可以出现在语句的前面
C
10.下面关于C语言用户标识符的描述,正确的是()。
A.不区分大小写
B.用户标识符不能描述常量
C.类型名也是用户标识符
D.用户标识符可以作为变量名
D
11.以下()是正确的变量名。
A. 1
B. 2
C. 3
D.语法错误
A
19.若有定义:int a=2;则正确的赋值表达式是()。
A. a-=(a*3)
B. double(-a)
C. a*3
D. a*4=3
A
20.语句x=(a=3,b=++a);运行后,x、a、b的值依次为()。
A. 3,3,4
B. 4,4,3
C. 4,4,4
D. 3,4,3
A. 1
B. 0
C. 2
D. 3
C
34.若有定义:int i,j;则表达式(i=2,j=5,i++,i+j++)的值是()。
A. 7
B. 8
2011福建省计算机等级考试试题 二级C试题考试题库
1、算法一般都可以用哪几种控制结构组合而成(D)A. 循环、分支、递归B. 顺序、循环、嵌套C. 循环、递归、选择D. 顺序、选择、循环2、下面对对象概念描述错误的是(A)A. 任何对象都必须有继承性B. 对象是属性和方法的封装体C. 对象间的通讯靠消息传递D. 操作是对象的动态性属性3、检查软件产品是否符合需求定义的过程称为(A)A. 确认测试B. 集成测试C. 验证测试D. 验收测试4、对建立良好的程序设计风格,下面描述正确的是(A)A. 程序应简单、清晰、可读性好B. 符号名的命名要符合语法C. 充分考虑程序的执行效率D. 程序的注释可有可无5、数据库概念设计的过程中,视图设计一般有三种设计次序,以下各项中不对的是(D)A. 自顶向下B. 由底向上C. 由内向外D. 由整体到局部6、数据库设计包括两个方面的设计内容,它们是(A)A. 概念设计和逻辑设计B. 模式设计和内模式设计C. 内模式设计和物理设计D. 结构特性设计和行为特性设计7、以下数据结构中不属于线性数据结构的是(C)A. 队列B. 线性表C. 二叉树D. 栈8、在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送(D)A. 调用语句B. 命令C. 口令D. 消息9、下列关于队列的叙述中正确的是(C)A. 在队列中只能插入数据B. 在队列中只能删除数据C. 队列是先进先出的线性表D. 队列是先进后出的线性表10、下列叙述中正确的是(A)A. 线性表是线性结构B. 栈与队列是非线性结构C. 线性链表是非线性结构D. 二叉树是线性结构11、检查软件产品是否符合需求定义的过程称为(A)A. 确认测试B. 集成测试C. 验证测试D. 验收测试12、在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。
其中数据独立性最高的阶段是(A)A. 数据库系统B. 文件系统C. 人工管理D. 数据项管理13、数据库概念设计的过程中,视图设计一般有三种设计次序,以下各项中不对的是(D)A. 自顶向下B. 由底向上C. 由内向外D. 由整体到局部14、下述关于数据库系统的叙述中正确的是(A)A. 数据库系统减少了数据冗余B. 数据库系统避免了一切冗余C. 数据库系统中数据的一致性是指数据类型的一致D. 数据库系统比文件系统能管理更多的数据15、在一棵二叉树上第5层的结点数最多是(B) 注:由公式2(k-1)得A. 8B. 16C. 32D. 1516、软件调试的目的是(B) 注:与软件测试要对比着复习A.发现错误B.改正错误C.改善软件的性能D.挖掘软件的潜能17、面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是(C)A. 模拟现实世界中不同事物之间的联系B. 强调模拟现实世界中的算法而不强调概念C. 使用现实世界的概念抽象地思考问题从而自然地解决问题D. 鼓励开发者在软件开发的绝大部分中都用实际领域的概念去思考18、下面描述中,符合结构化程序设计风格的是(A)A. 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B. 模块只有一个入口,可以有多个出口C. 注重提高程序的执行效率D. 不使用goto语句19、希尔排序法属于哪一种类型的排序法(B)A.交换类排序法B.插入类排序法C.选择类排序法D.建堆排序法20、下述关于数据库系统的叙述中正确的是(A)A. 数据库系统减少了数据冗余B. 数据库系统避免了一切冗余C. 数据库系统中数据的一致性是指数据类型的一致D. 数据库系统比文件系统能管理更多的数据21、结构化程序设计主要强调的是(B)A.程序的规模B.程序的易读性C.程序的执行效率D.程序的可移植性22、结构化程序设计主要强调的是(B)A.程序的规模B.程序的易读性C.程序的执行效率D.程序的可移植性23、算法的空间复杂度是指(D)A. 算法程序的长度B. 算法程序中的指令条数C. 算法程序所占的存储空间D. 算法执行过程中所需要的存储空间24、下面对对象概念描述错误的是(A)A. 任何对象都必须有继承性B. 对象是属性和方法的封装体C. 对象间的通讯靠消息传递D. 操作是对象的动态性属性25、信息隐蔽的概念与下述哪一种概念直接相关(B)A.软件结构定义B. 模块独立性C. 模块类型划分D. 模拟耦合度26、算法的时间复杂度是指(C)A. 执行算法程序所需要的时间B. 算法程序的长度C. 算法执行过程中所需要的基本运算次数D. 算法程序中的指令条数27、算法的时间复杂度是指(C)A. 执行算法程序所需要的时间B. 算法程序的长度C. 算法执行过程中所需要的基本运算次数D. 算法程序中的指令条数28、下列叙述中正确的是(C)A.数据库是一个独立的系统,不需要操作系统的支持B.数据库设计是指设计数据库管理系统C.数据库技术的根本目标是要解决数据共享的问题D.数据库系统中,数据的物理结构必须与逻辑结构一致29、下述关于数据库系统的叙述中正确的是(A)A. 数据库系统减少了数据冗余B. 数据库系统避免了一切冗余C. 数据库系统中数据的一致性是指数据类型的一致D. 数据库系统比文件系统能管理更多的数据30、数据库概念设计的过程中,视图设计一般有三种设计次序,以下各项中不对的是(D)A. 自顶向下B. 由底向上C. 由内向外D. 由整体到局部31、数据的存储结构是指(B)A. 数据所占的存储空间量B. 数据的逻辑结构在计算机中的表示C. 数据在计算机中的顺序存储方式D. 存储在外存中的数据32、设有下列二叉树:图见书P46对此二叉树中序遍历的结果为(B)A. ABCDEFB. DBEAFCC. ABDECFD. DEBFCA33、在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。
福建计算机二级c语言试题及答案
福建计算机二级c语言试题及答案一、选择题(每题2分,共40分)1. 下列关于C语言的描述中,错误的是()。
A. C语言是一种高级编程语言B. C语言具有较好的可移植性C. C语言可以直接操作硬件D. C语言的程序只能在Windows操作系统下运行答案:D2. 在C语言中,以下哪个选项是正确的整型常量()。
A. 0.5B. 0x12C. 1.0e2D. 0123答案:B3. 在C语言中,以下哪个选项是合法的字符常量()。
A. 'ab'B. '2'C. '\t'D. "Hello"答案:C4. C语言中,以下哪个关键字用于定义函数()。
A. intB. returnC. voidD. main答案:A5. 在C语言中,以下哪个选项是正确的字符串常量()。
A. "Hello"B. 'Hello'C. "HelloD. "Hello\"答案:A6. 在C语言中,以下哪个选项是正确的一维数组声明()。
A. int a[10];B. int a[];C. int a=10;D. int a[10]={0};答案:A7. 在C语言中,以下哪个选项是正确的二维数组声明()。
A. int a[2][3];B. int a[][3];C. int a[2][];D. int a[][];答案:A8. 在C语言中,以下哪个选项是正确的函数声明()。
A. int add(int x, int y);B. int add(int, int);C. int add();D. int add(int x; int y);答案:A9. 在C语言中,以下哪个选项是正确的递归函数调用()。
A. int fact(int n) { return n * fact(n-1); }B. int fact(int n) { if (n > 0) return n * fact(n-1); else return 1; }C. int fact(int n) { return n * fact(n+1); }D. int fact(int n) { return n * fact(n); }答案:B10. 在C语言中,以下哪个选项是正确的指针声明()。
2011年9月全国计算机二级等级考试C语言公共基础知识选择92题+填空题46题(含答案)
计算机二级C等级考试公共基础知识(1) 下面叙述正确的是______。
(C)A算法的执行效率与数据的存储结构无关B. 算法的空间复杂度是指算法程序中指令(或语句)的条数C. 算法的有穷性是指算法必须能在执行有限个步骤之后终止D. 以上三种描述都不对(2) 以下数据结构中不属于线性数据结构的是______。
(C)A. 队列B. 线性表C. 二叉树D. 栈(3) 在一棵二叉树上第5层的结点数最多是______。
(B)A. 8B. 16C. 32D. 15(5) 下面概念中,不属于面向对象方法的是______。
(D)A. 对象B. 继承C. 类D. 过程调用(6) 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是______。
(B)A. 可行性分析B. 需求分析C. 详细设计D. 程序编码(7) 在软件开发中,下面任务不属于设计阶段的是______。
(D)A. 数据结构设计B. 给出系统模块结构C. 定义模块算法D. 定义需求并建立系统模型(8) 数据库系统的核心是______。
(B)A. 数据模型B. 数据库管理系统C. 软件工具D. 数据库(9) 下列叙述中正确的是______。
(C)A. 数据库是一个独立的系统,不需要操作系统的支持B. 数据库设计是指设计数据库管理系统C. 数据库技术的根本目标是要解决数据共享的问题D. 数据库系统中,数据的物理结构必须与逻辑结构一致(10) 下列模式中,能够给出数据库物理存储结构与物理存取方法的是______。
(A)A. 内模式B. 外模式C. 概念模式D. 逻辑模式(11) 算法的时间复杂度是指______。
(C)A. 执行算法程序所需要的时间B. 算法程序的长度C. 算法执行过程中所需要的基本运算次数D. 算法程序中的指令条数(12) 下列叙述中正确的是______。
(A)A. 线性表是线性结构B. 栈与队列是非线性结构C. 线性链表是非线性结构D. 二叉树是线性结构(13) 设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为______。
(2021年整理)2011年3月份全国计算机等级考试二级C语言选择题带详解题库
编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整版)2011年3月份全国计算机等级考试二级C语言选择题带详解题库)的内容能够给您的工作和学习带来便利。
同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。
本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为(完整版)2011年3月份全国计算机等级考试二级C语言选择题带详解题库的全部内容。
详解题库编辑整理:张嬗雒老师尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布到文库,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是我们任然希望(完整版)2011年3月份全国计算机等级考试二级C语言选择题带详解题库这篇文档能够给您的工作和学习带来便利。
同时我们也真诚的希望收到您的建议和反馈到下面的留言区,这将是我们进步的源泉,前进的动力。
本文可编辑可修改,如果觉得对您有帮助请下载收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为〈(完整版)2011年3月份全国计算机等级考试二级C语言选择题带详解题库> 这篇文档的全部内容。
2011年3月份全国计算机等级考试二级C语言选择题带详解题库一、选择题在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。
(1)下列有关数据库的描述,正确的是A)数据处理是将信息转化为数据的过程B)数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变C)关系中的每一列称为元组,一个元组就是一个字段D)如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键字,则称其为本关系的外关键字(1)D 【解析】数据处理是指将数据转换成信息的过程,故选项A)叙述错误;数据的物理独立性是指数据的物理结构的改变,不会影响数据库的逻辑结构,故选项B)叙述错误;关系中的行称为元组,对应存储文件中的记录,关系中的列称为属性,对应存储文件中的字段,故选项C)叙述错误。
2011年9月计算机二级C语言笔试题库50套,答案解析详细
2011年3月份全国计算机等级考试二级C语言笔试题库50套一、选择题在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。
(1)为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为 BA)PAD图B)N-S图C)结构图D)数据流图(2)结构化程序设计主要强调的是BDA)程序的规模B)程序的效率C)程序设计语言的先进性D)程序易读性(3)为了使模块尽可能独立,要求 BA)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强B)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱C)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱D)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强(4)需求分析阶段的任务是确定 DA)软件开发方法B)软件开发工具C)软件开发费用D)软件系统功能(5)算法的有穷性是指DAA)算法程序的运行时间是有限的B)算法程序所处理的数据量是有限的C)算法程序的长度是有限的D)算法只能被有限的用户使用(6)对长度为n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是CDA)快速排序B)冒泡排序C)直接插入排序D)堆排序(7)如果进栈序列为e1,e2,e3,e4,则可能的出栈序列是CBA)e3,e1,e4,e2B)e2,e4,e3,e1C)e3,e4,e1,e2D) 任意顺序(8)将E-R图转换到关系模式时,实体与联系都可以表示成 BA)属性B)关系C)键D)域(9)有三个关系R、S和T如下:RB C Da 0 k1b 1 n1SB C Df 3 h2a 0 k1n 2 x1TB C Da 0 k1由关系R和S通过运算得到关系T,则所使用的运算为 DA)并B)自然连接C)笛卡尔积D)交(10)下列有关数据库的描述,正确的是 DA)数据处理是将信息转化为数据的过程B)数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变C)关系中的每一列称为元组,一个元组就是一个字段D)如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键字,则称其为本关系的外关键字(11)以下叙述中正确的是BCA)用C程序实现的算法必须要有输入和输出操作B)用C程序实现的算法可以没有输出但必须要有输入C)用C程序实现的算法可以没有输入但必须要有输出D)用C程序实现的算法可以既没有输入也没有输出(12)下列可用于C语言用户标识符的一组是CBA)void, define, WORDB)a3_3,_123,CarC)For, -abc, IF CaseD)2a, DO, sizeof(13)以下选项中可作为C语言合法常量的是 AA)-80B)-080C)-8e1.0D)-80.0e(14)若有语句:char *line[5];,以下叙述中正确的是 AA) 定义line是一个数组,每个数组元素是一个基类型为char为指针变量B) 定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组C) 定义line是一个指针数组,语句中的*号称为间址运算符D) 定义line是一个指向字符型函数的指针(15)以下定义语句中正确的是DBA)int a=b=0;B)char A=65+1,b=′b′;C)float a=1,*b=&a,*c=&b;D)double a=0 0;b=1.1;(16)有以下程序段char ch; int k;ch=′a′;k=12;printf("%c,%d,",ch,ch,k); printf("k=%d \n",k);已知字符a的ASCII码值为97,则执行上述程序段后输出结果是CDA)因变量类型与格式描述符的类型不匹配输出无定值B)输出项与格式描述符个数不符,输出为零值或不定值C)a,97,12k=12D)a,97,k=12(17)有以下程序 Dmain(){ int i,s=1;for (i=1;i<50;i++)if(!(i%5)&&!(i%3)) s+=i;printf("%d\n",s);}程序的输出结果是A)409B)277C)1D)91(18)当变量c的值不为2、4、6时,值也为"真"的表达式是 AA)(c==2)||(c==4)||(c==6)B)(c>=2&& c<=6)||(c!=3)||(c!=5)C)(c>=2&&c<=6)&&!(c%2)D)(c>=2&& c<=6)&&(c%2!=1)(19)若变量已正确定义,有以下程序段 Aint a=3,b=5,c=7;if(a>b) a=b; c=a;if(c!=a) c=b;printf("%d,%d,%d\n",a,b,c);其输出结果是A)程序段有语法错B)3,5,3C)3,5,5D)3,5,7(20)有以下程序#include <stdio.h>main(){ int x=1,y=0,a=0,b=0;switch(x){ case 1:switch(y){ case 0:a++; break;case 1:b++; break;}case 2:a++; b++; break;case 3:a++; b++;}printf("a=%d,b=%d\n",a,b);}程序的运行结果是 BA)a=1,b=0B)a=2,b=2C)a=1,b=1D)a=2,b=1(21)下列程序的输出结果是 B#include "stdio.h"main(){ int i,a=0,b=0;for(i=1;i<10;i++){ if(i%2==0){a++;continue;}b++;}printf("a=%d,b=%d",a,b); }A)a=4,b=4B)a=4,b=5C)a=5,b=4D)a=5,b=5(22)已知#int t=0;while (t=1){...}则以下叙述正确的是 CA)循环控制表达式的值为0B)循环控制表达式的值为1C)循环控制表达式不合法D)以上说法都不对(23)下面程序的输出结果是 Amain(){ int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;printf("%d\n",*(p+2));}A)3B)4C)1D)2(24)以下错误的定义语句是 CA)int x[][3]={{0},{1},{1,2,3}};B)int x[4][3]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};C)int x[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};D)int x[][3]={1,2,3,4};(25)有以下程序void ss(char *s,char t){ while(*s){ if(*s==t)*s=t-′a′+′A′;s++; } }main(){ char str1[100]="abcddfefdbd",c=′d′;ss(str1,c); printf("%s\n",str1);}程序运行后的输出结果是 BA)ABCDDEFEDBDB)abcDDfefDbDC)abcAAfefAbAD)Abcddfefdbd(26)有如下程序main(){ char ch[2][5]={"6937","8254"},*p[2];int i,j,s=0;for(i=0;i<2;i++)p[i]=ch[i];for(i=0;i<2;i++)for(j=0;p[i][j]>′\0′;j+=2)s=10*s+p[i][j]-′0′;printf("%d\n",s);}该程序的输出结果是 AA)69825B)63825C)6385D)693825(27)有定义语句:char s[10];,若要从终端给s输入5个字符,错误的输入语句是 BA)gets(&s[0]);B)scanf("%s",s+1);C)gets(s);D)scanf("%s",s[1]);(28)以下叙述中错误的是 BA)在程序中凡是以"#"开始的语句行都是预处理命令行B)预处理命令行的最后不能以分号表示结束C)#define MAX 是合法的宏定义命令行D)C程序对预处理命令行的处理是在程序执行的过程中进行的(29)设有以下说明语句typedef struct{ int n;char ch[8];} PER;则下面叙述中正确的是 BA)PER 是结构体变量名B)PER是结构体类型名C)typedef struct 是结构体类型D)struct 是结构体类型名(30)以下叙述中错误的是 DA)gets函数用于从终端读入字符串B)getchar函数用于从磁盘文件读入字符C)fputs函数用于把字符串输出到文件D)fwrite函数用于以二进制形式输出数据到文件(31)以下能正确定义一维数组的选项是 DA)int a[5]={0,1,2,3,4,5};B)char a[]={′0′,′1′,′2′,′3′,′4′,′5′,′\0′};C)char a={′A′,′B′,′C′};D)int a[5]="0123";(32)有以下程序#include<string.h>main(){ char p[]={′a′, ′b′, ′c′},q[10]={ ′a′, ′b′, ′c′};printf("%d%d\n",strlen(p),strlen(q));}以下叙述中正确的是 AA) 在给p和q数组置初值时,系统会自动添加字符串结束符,故输出的长度都为3B) 由于p数组中没有字符串结束符,长度不能确定,但q数组中字符串长度为3C) 由于q数组中没有字符串结束符,长度不能确定,但p数组中字符串长度为3D) 由于p和q数组中都没有字符串结束符,故长度都不能确定(33)有以下程序#include <stdio.h>#include <string.h>void fun(char *s[],int n){ char *t; int i,j;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(strlen(s[i])>strlen(s[j])) {t=s[i];s[i]:s[j];s[j]=t;} }main(){ char *ss[]={"bcc","bbcc","xy","aaaacc","aabcc"};fun(ss,5); printf("%s,%s\n",ss[0],ss[4]);}程序的运行结果是 DA)xy,aaaaccB)aaaacc,xyC)bcc,aabccD)aabcc,bcc(34)有以下程序#include <stdio.h>int f(int x){ int y;if(x==0||x==1) return(3);y=x *x-f(x-2);return y;}main(){ int z;z=f(3); printf("%d\n",z);}程序的运行结果是A)0B)9C)6D)8(35)下面程序段的运行结果是 Cchar str[]="ABC",*p=str;printf("%d\n",*(p+3));A)67B)0C)字符′C′的地址D)字符′C′(36)若有以下定义:struct link{ int data;struct link *next;} a,b,c,*p,*q;且变量a和b之间已有如下图所示的链表结构: 指针p指向变量a,q指向变量c。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
答案试题C 1. 在C语言源程序中,以下叙述正确的是()。
A. main函数必须位于文件的开头B. 每行只能写一条语句C. 程序中的一个语句可以写成多行D. 每个语句的最后必须有点号C 2. 关于C语言的源程序的叙述中,错误的是()。
A. C语言的源程序由函数构成B. main函数可以书写在自定义函数之后C. 必须包含有输入语句D. 一行可以书写多个语句C 3. 关于C语言数据类型的叙述,正确的是()。
A. 枚举类型不是基本类型B. 数组不是构造类型C. 变量必须先定义后使用D. 不允许使用空类型C★P6 4. C程序中main函数的位置()。
A. 必须在最开始B. 必须在系统库函数后面C. 可以在自定义函数后面D. 必须在最后B 5. C语言的函数体由()括起来。
A. ()B. { }C. [ ]D. /* */D 6. 关于C语言的叙述中,不正确的是()。
A. C程序可由一个或多个函数组成B. C程序必须包含一个main()函数C. C程序的基本组成单位是函数D. 注释说明只能位于一条语句的后面D 7. 以下叙述不正确的是()。
A. C程序的执行总是从main函数开始vB. 一个C源程序必须包含一个main函数C. C语言程序的基本组成单位是函数D. 在编译C程序源程序时,可发现注释中的拼写错误C 8. 结构化程序设计的三种基本结构是()。
A. 函数结构、分支结构、判断结构B. 函数结构、嵌套结构、平行结构C. 顺序结构、分支结构、循环结构D. 分支结构、循环结构、嵌套结构C 9. 对于C语言源程序,以下叙述错误的是()。
A. 可以有空语句B. 函数之间是平等的,在一个函数内部不能定义其它函数C. 程序调试时如果没有提示错误,就能得到正确结果D. 注释可以出现在语句的前面D★P39 10. 下面关于C语言用户标识符的描述,正确的是()。
A. 不区分大小写B. 用户标识符不能描述常量C. 类型名也是用户标识符D. 用户标识符可以作为变量名D 11. 以下()是正确的变量名。
A. 5fB. ifC. f.5D. _f5D 12. 以下()是正确的常量。
A. E-5B. 1E5.1C. 'a12'D. 32766LD 13. 以下()是正确的变量名。
A. a.beeB. -p11C. intD. p_11C 14. 以下()是正确的字符常量。
A. "c"B. '\ \' 'C. 'W'D. "\32a"A ★P52 15. 以下()是不正确的字符串常量。
字符常量是一对‘’。
字符串常量一对“”A. 'abc'B. "12'12"C. "0"D. " "B P40 16. 以下()是错误的整型常量。
A. -0xcdfB. 018 /* 以0开头的是八进制数C. 0xeD. 011B 17. 以下()是正确的浮点数。
A. e3B. .62C. 2e4.5D. 123A 18. 若有说明语句:char c='\95'; 则变量c包含()个字符。
A. 1B. 2C. 3D. 语法错误A 19. 若有定义:int a=2; 则正确的赋值表达式是()。
A. a-=(a*3)B. double(-a)C. a*3D. a*4=3C ★与23题对比 20. 语句x=(a=3,b=++a);运行后,x、a、b的值依次为()。
A. 3,3,4B. 4,4,3C. 4,4,4D. 3,4,3B 21. 语句a=(3/4)+3%2;运行后,a的值为()。
A. 0B. 1C. 2D. 3A 22. char型变量存放的是()。
A. ASCII代码值B. 字符本身C. 十进制代码值D. 十六进制代码值C★与20题对比 23. 若有定义:int x,a;则语句x=(a=3,a+1);运行后,x、a的值依次为()。
A. 3,3B. 4,4C. 4,3D. 3,4B 24. 若有定义:int a; 则语句a=(3 * 4)+ 2 % 3;运行后,a的值为()。
A. 12B. 14C. 11D. 17A 25. 若有定义:int a,b; double x,则以下不符合C语言语法的表达式是()。
A. x%(-3)B. a+=-2C. a=b=2D. x=a+b26. 若有定义:int x=2,y=3;float i;,则以下符合C语言语法的表达式是()。
B★ A. x=x*3=2B. x=(y==1)C. i=float(x)D. i%(-3)C 27. 设double型变量a,b,c,e均有值;对代数式(3ae)/(bc),不正确的C语言表达式是()。
A. a/b/c*e*3B. 3*a*e/b/cC. 3*a*e/b*cD. a*e/c/b*3B 28. 下面叙述正确的是()。
A. 2/3 与 2.0/3.0 等价B. (int)2.0/3 与 2/3 等价C. ++5 与 6 等价D. 'A'与"A"等价A 29. 下面叙述中,错误的是()。
A. 其算术运算对象不包含函数B. %(模运算符)的运算对象只能为整型量????C. 算术运算符的结合方向是"自左至右"D. 自加和自减运算符的结合方向是"自右至左"A 30. 下面叙述正确的是()。
A. 强制类型转换运算的优先级高于算术运算B. 若a和b是整型变量,(a+b)++是合法的C. 'A'*'B' 是不合法的D. "A"+"B"是合法的B 31. 若有定义:int k,i=2,j=4; 则表达式 k=(++i)*(j--) 的值是()。
A. 8B. 12C. 6D. 9C 32. 设整型变量a为5,使b不为2的表达式是()。
A. b=(++a)/3B. b=6-(--a)C. b=a%2D. b=a/2C★ 33. 若有定义:int a=1,b=2,c=3; 则语句 ++a||++b&&++c;运行后b的值为()。
A. 1B. 0C. 2 || 一个真,则真。
因为(++a)成立,所以(++b)没运行,即输出原值D. 3B 34. 若有定义:int i,j;则表达式(i=2,j=5,i++,i+j++)的值是()。
A. 7B. 8C. 9D. 10B★35. 若有定义:int a,b;则表达式(a=2,b=5,a*2,b++,a+b)的值是()。
A. 7B. 8 a=2 , b=6..C. 9D. 10B★ 36. 若有定义:int m=5,n=3;则表达式(m+1,n+1,(--m)+(n--))的值是()。
A. 6B. 7 m=4 n=3C. 8D. 9B 37. 已知 int a;使用scanf()函数输入一个整数给变量a,正确的函数调用是()。
A. scanf("%d",a);B. scanf("%d",&a);C. scanf("%f",&a);D. scanf("%lf",&a);D 38. 已知 double a;使用scanf()函数输入一个数值给变量a,正确的函数调用是()。
A. scanf("%ld",&a);B. scanf("%d",&a);C. scanf("%7.2f",&a);D. scanf("%lf",&a);B 39. 已知 char a;使用scanf()函数输入一个字符给变量a,不正确的函数调用是()。
A. scanf("%d",&a);B. scanf("%lf",&a);C. scanf("%c",&a);D. scanf("%u",&a);B 40. putchar()函数的功能是向终端输出()。
A. 多个字符B. 一个字符C. 一个实型变量值D. 一个整型变量表达式D 41. getchar()函数的功能是从终端输入()。
A. 一个整型变量值B. 一个实型变量值C. 多个字符D. 一个字符D 42. 若有定义:int x=1234,y=123,z=12;则语句printf("%4d+%3d+%2d", x, y, z);运行后的输出结果为()。
A. 123412312B. 12341234123412341231231231212C. 1234+1234+1234D. 1234+123+1243. 已有如下定义和输入语句,A int a; char c1,c2;scanf("%d%c%c",&a,&c1,&c2);若要求a、c1、c2的值分别为10、A和B,正确的数据输入是()。
A. 10ABB. 10 A BC. 10A BD. 10 ABB 44. 已有如下定义和输入语句:int a,b;scanf("%d,%d",&a,&b);若要求a、b的值分别为10和20,正确的数据输入是()。
A. 10 20B. 10,20C. a=10,b=20D. 10;20D 45. 以下程序的运行结果是()。
void main(){int a=65;char c='A';printf("%x,%d",a,c);}A. 65,aB. 41,aC. 65,65D. 41,65A 46. 下面叙述中,()不是结构化程序设计中的三种基本结构之一。
A. 数据结构B. 选择结构C. 循环结构D. 顺序结构A 47. 下面叙述中,()不是结构化程序设计三种基本结构的共同特点。
A. 先判断后执行B. 单入口,单出口C. 程序中没有执行不到的语句D. 无死循环A★P34 48. 结构化程序设计不包括()。
A. 最优化B. 自顶而下,逐步细化C. 模块化设计D. 结构化编码D 49. 以下运算符中优先级最高的是()。
A. >B. ||C. &&D. +A 50. 若有定义:int x=3,y=4;则表达式 !x||y 的值为()。
A. 1B. OC. 3D. 4A 51. 若有定义:int i=7,j=8;则表达式 i>=j||i<j 的值为()。