二级C语言笔试真题

合集下载

全国计算机二级考试《C语言》真题练习及答案

全国计算机二级考试《C语言》真题练习及答案

全国计算机二级考试《C语言》真题练习及答案全国计算机二级考试《C语言》真题练习及答案一、选择题(1)下列关于栈叙述正确的是A)栈顶元素最先能被删除B)栈顶元素最后才能被删除C)栈底元素永远不能被删除D)以上三种说法都不对(2)下列叙述中正确的是A)有一个以上根结点的数据结构不一定是非线性结构B)只有一个根结点的数据结构不一定是线性结构C)循环链表是非线性结构D)双向链表是非线性结构(3)某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为(假设根结点在第1层)A)3B)4C)6D)7(4)在软件开发中,需求分析阶段产生的主要文档是A)软件集成测试计划B)软件详细设计说明书C)用户手册D)软件需求规格说明书(5)结构化程序所要求的基本结构不包括A)顺序结构B)GOTO跳转C)选择(分支)结构D)重复(循环)结构(6)下面描述中错误的是A)系统总体结构图支持软件系统的详细设计B)软件设计是将软件需求转换为软件表示的过程C)数据结构与数据库设计是软件设计的任务之一D)PAD图是软件详细设计的表示工具(7)负责数据库中查询操作的数据库语言是A)数据定义语言B)数据管理语言C)数据操纵语言D)数据控制语言(8)一个教师可讲授多门课程,一门课程可由多个教师讲授。

则实体教师和课程间的联系是A)1:1联系B)1:m联系C)m:1联系D)m:n联系(9)有三个关系R、S和T如下:则由关系R和S得到关系T的操作是A)自然连接B)交C)除D)并(10)定义无符号整数类为UInt,下面可以作为类UInt实例化值的是A)-369B)369C)0.369D)整数集合{1,2,3,4,5}(11)计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确的是A)C语言程序仅可以编译执行B)C语言程序仅可以解释执行C)C语言程序既可以编译执行又可以解释执行D)以上说法都不对(12)以下叙述中错误的是A)C语言的可执行程序是由一系列机器指令构成的B)用C语言编写的源程序不能直接在计算机上运行C)通过编译得到的二进制目标程序需要连接才可以运行D)在没有安装C语言集成开发环境的机器上不能运行C源程序生成的.exe文件(13)以下选项中不能用作C程序合法常量的是A)1,234B)'\123'C)123D)"\x7G"(14)以下选项中可用作C程序合法实数的是A).1e0B)3.0e0.2C)E9D)9.12E(15)若有定义语句:int a=3,b=2,c=1;,以下选项中错误的赋值表达式是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=%snum=%d",name;&num);当执行上述程序段,并从键盘输入:name=Lili num=1001<回车>后,name的值为A)LiliB)name=LiliC)Lilinum=D)name=Lili num=1001(17)if语句的基本形式是:if(表达式)语句,以下关于“表达式”值的叙述中正确的是A)必须是逻辑值B)必须是整数值C)必须是正数D)可以是任意合法的数值(18)有以下程序#includemain(){ int x=011;printf("%d\n",++x);}程序运行后的输出结果是A)12B)11C)10D)9(19)有以下程序#includemain(){ int s;scanf("%d",&s);while(s>0){ switch(s){ case 1:printf("%d",s+5);case 2:printf("%d",s+4);break;case 3:printf("%d",s+3);default:printf("%d",s+1);break;}scanf("%d",&s);}}运行时,若输入1 2 34 5 0<回车>,则输出结果是A)6566456B)66656C)66666D)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时结束程序运行。

二级C语言笔试318_真题(含答案与解析)-交互

二级C语言笔试318_真题(含答案与解析)-交互

二级C语言笔试318(总分100, 做题时间90分钟)一、选择题在下列各题的A) 、B) 、C) 、D) 四个选项中,只有一个选项是正确的。

1.结构化程序设计主要强调的是SSS_SINGLE_SELA 程序的规模B 程序的效率C 程序设计语言的先进性D 程序易读性分值: 2答案:D[解析] 结构化程序设计方法的主要原则可以概括为自顶向下、逐步求精、模块化及限制使用goto语句,总的来说可使程序结构良好、易读、易理解、易维护。

2.若有条件表达式(exp)?a++:b--,则以下表达式中能完全等价于表达式(exp)的是SSS_SINGLE_SELA (exp==0)B (exp!=0)C (exp==1)D (exp!=1)分值: 2答案:B[解析] 条件运算符要求有3个操作对象,称三日(元)运算符,它是C语言中唯一的一个三目运算符。

条件表达式的一般形式为:表达式17表达式2:表达式3。

其求解顺序是:先求解表达式1,若为非0(真)则求解表达式2,此时表达式2的值就作为整个条件表达式的值。

若表达式1的值为0(假),则求解表达式3,表达式3的值就是整个条件表达式的值,注意++、--的用法。

3.将E-R图转换到关系模式时,实体与联系都可以表示成SSS_SINGLE_SELA 属性B 关系C 键D 域分值: 2答案:B[解析] 关系数据库逻辑设计的主要工作是将E-R图转换成指定RDBMS中的关系模式。

首先,从E-R图到关系模式的转换是比较直接的,实体与联系都可以表示成关系,E-R图中属性也可以转换成关系的属性,实体集也可以转换成关系。

4.下面判断正确的是SSS_SINGLE_SELA char*a="china";等价于char*a;*a="china";B char str[5]={"china"};等价于char str[]={"china"};C char *s="china";等价于char *s;s="china";D char c[4]="abc",d[4]="abc";等价于char c[4]=d[4]="abc";分值: 2答案:C[解析] 选项A) char *a;*a=“china”应改为a=china;,选项B) 应该是char str[6];D) 项表述方法有错误。

计算机二级考试c语言考试真题及答案

计算机二级考试c语言考试真题及答案

计算机二级考试c语言考试真题及答案一、单项选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于声明一个函数?A. intB. voidC. returnD. function答案:A2. 若有定义:int a=5, b=10; 则以下哪个表达式的值不为5?A. a+bB. a-bC. a*bD. a/b答案:C3. 在C语言中,以下哪个选项不是标准输入输出库函数?A. printf()B. scanf()C. puts()D. strcat()答案:D4. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. _variableD. variable-2答案:B5. 若有定义:char c='A'; 则以下哪个表达式的值不为65?A. cB. 'A'C. "A"D. '\101'答案:C6. 在C语言中,以下哪个选项表示逻辑“与”操作?A. &&B. ||C. !D. =答案:A7. 在C语言中,以下哪个选项是正确的字符串声明?A. char str[5] = "ABCDE";B. char str[5] = {'A', 'B', 'C', 'D', 'E'};C. char str[5] = {'A', 'B', 'C', 'D'};D. char str[5] = "ABC" "DE";答案:D8. 若有定义:int x=10; 则以下哪个表达式的值不为10?A. x++B. x--C. ++xD. --x答案:D9. 在C语言中,以下哪个选项是正确的二维数组声明?A. int array[3][2];B. int array[][] = {1, 2, 3};C. int array[3][];D. int array[2, 3];答案:A10. 在C语言中,以下哪个选项是正确的文件操作函数?A. fopen()B. fclose()C. fgetc()D. All of the above答案:D二、程序填空题(每空2分,共20分)给定以下程序片段,请在空白处填入正确的代码。

全国计算机二级C语言历年真题完整版

全国计算机二级C语言历年真题完整版

2010年3月全国计算机等级考试二级C 笔试试卷一、选择题(1)A)对长度为n的有序链表进行查找,最坏情况下需要的比较次数为nB)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)C)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log 2n)D)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log 2n)(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)维护阶段C)上述三个阶段(7)数据库管理系统中负责数据模式定义的语言是A)数据定义语言B)数据管理语言C)数据操纵语言D)数据控制语言(8)在学生管理的关系数据库中,存取一个学生信息的数据单位是A)文件B)数据库C)字段D)记录(9)数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的A)需求分析阶段B)逻辑设计阶段C)概念设计阶段D)物理设计阶段(10)有两个关系R和T如下:R T A B C c 32d 32则由关系R得到关系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语言的数值常量中夹带空格不影响常量值的正确表示AB C a12b22c32d 32(13)以下C语言用户标识符中,不合法的是A)_1B)AaBcC)a_bD)a--b(14)若有定义:doublea=22;inti=0,k=18;,则不符合C语言规定的赋值语句是A)a=a++,i++;B)i=(a+k)<=(i+k);C)i=a%11;D)i=!a;(15)有以下程序#include<stdio.h>main(){char a,b,c,d;scanf(“%c%c”,&a,&b);c=getchar();d=getchar;printf(“%c%c%c%c\n”,a,b,c,d);}当执行程序时,按下列方式输入数据(从第1列开始,<CR>代表回车,注意:回车也是一个字符)12<CR>34<CR>则输出结果是A)1234B)12C)12D)12(16)以下关于C语言数据类型使用的叙述中错误的是A)若要准确无误差的表示自然数,应使用整数类型B)若要保存带有多位小数的数据,应使用双精度类型C)若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型D)若只处理“真”和“假”两种逻辑值,应使用逻辑类型(17)若a是数值类型,则逻辑表达式(a==I)||(a!=1)的值是A)1B)0C)2D)不知道a的值,不能确定(18)以下选项中与if(a==1)a=b;else a++;语句功能不同的switch语句是A)switch(a){case1:a=b;break;default:a++;}B)switch(a==1){case0:a=b;break;case1:a++;}C)switch(a){default:a++;break;case1:a=b;}D)switch(a==1){case1:a=b;break;case0:a++;}(19)如下嵌套的if语句if(a<b)if(a<c)k=a;else k=c;if(b<c)k=b;else k=c;以下选项中与上述if语句等价的语句是A)k=(a<b)?a:b;k=(b<c)?b:c;B)k=(a<b)?((b<c)?a:b)((b>c)?b:c);C)k=(a<b)?((a<c)?a:c)((b<c)?b:c);D)k=(a<b)?a:b;k=(a<c)?a:c;(20)有以下程序#include<stdio.h>main(){int i,j,m=1;for(i=1;i<3;i++){for(j=3;j>0;j--){if(i+j>3)break;m*=i*j;}}printf(“m=%d\n”,m);}程序运行后的输出结果是A)m=6B)m=2C)m=4D)m=5(21)有以下程序#include<stdio.h>main(){int a=1,b=2;for(;a<8;a++){b+=a;a+=2;}printf(“%d,%d\n”,a,b);}程序运行后的输出结果是A)9,18B)8,11C)7,11D)10,14(22)有以下程序,其中k的初值为八进制数#include<stdio.h>main(){int k=011;printf(“%d\n”,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)一个自定义函数中必须有一条return语句B)一个自定义函数中可以根据不同情况设置多条return语句C)定义成void类型的函数中可以有带返回值的return语句D)没有return语句的自定义函数在执行结束时不能返同到调用处(25)下列选项中,能正确定义数组的语句是A)int num[0..2008];B)int num[];C)int N=2008;D)#define N2008int num[N];int num[N];(26)有以下程序#include<stdio.h>void 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(“%c,%c\n”,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]={0,2,1,3,0},i,s=0;for(i=1;i<3;i++)s=s+a[b[i]];printf(“%d\n”,s);}程序运行后的输出结果是A)6B)10C)11D)15(30)有以下程序#include<stdio.h>main(){int b[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1;for(i=1;i<3;i++)for(j=1;j<=1;j++)t+=b[i][b[j][i]];printf(“%d\n”,t);}程序运行后的输出结果是A)1B)3C)4D)9(31)若有以下定义和语句char s1[10]="abcd!",s2="\n123\\";printf("%d%d\n",strlen(s1),strlen(s2));则输出结果是A)55B)105C)107D)58(32)有以下程序#include<stdio.h>#define N8void 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=1;i<N/2;i++){printf(“%d”,a[i]);}printf(“\n”);}程序运行后的输山结果是A)1313B)2234C)3234D)1234(33)有以下程序#include<stdio.h>int f(int t[],int n);main(){int a[4]={1,2,3,4},s;s=f(a,4);printf(“%d\n”,s);}int f(int t[],int n){if(n>0)return t[n-1]+f(t,n-1);else return0;}程序运行后的输出结果是A)4B)10C)14D)6(34)有以下程序#include<stdio.h>int fun(){static int x=1;x*=2;return x;}main(){int i,s=1;for(i=1;i<=2;i++)s=fun();printf(“%d\n”,s);}程序运行后的输出结果是A)0B)1C)4D)8(35)有以下程序#include<stdio.h>#define SUB(a)(a)-(a)main(){int a=2,b=3,c=5,d;d=SUB(a+b)*c;printf(“%d\n”,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<stdio.h>#include<string.h>struct A{int a;char b[10];double c;};void f(struct At);main(){struct Aa={1001,“ZhangDa”,1098.0};f(a);printf(“%d,%s,%6.1f\n”,a.a,a.b,a.c);}void f(struct At){t.a=1002;strcpy(t.b,“ChangRong”);t.c=1202.0;}输出结果是A)1001,ZhangDa,1098.0B)1002,ChangRong,1202.0C)1001,ChangRong,10980D)1002,ZhangDa,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=1980;B)w.year=1980;C)pw->year=1980;D)w.s.year=1980;(39)有以下程序#include<stdio.h>main(){int a=2,b=a,c=2;printf(“%d\n”,a/b&c);}程序运行后的输出结果是A)0B)1C)2D)3(40)有以下程序#include<stdio.h>main(){FILE*fp;char str[10];fp=open(“myfile.dat”,“w”);fputs(“abc”,pf);close(pf);fp=open(“myfile.dat”,“a+”);fprintf(pf,“%d”,28);rewind(pf);fscanf(pf,“%s”,str);puts(str);close(pf);}程序运行后的输出结果是A)abcB)28cC)abc28D)因类型不一致而出错二、填空题(1)一个队列的初始状态为空。

二级C语言笔试311_真题(含答案与解析)-交互

二级C语言笔试311_真题(含答案与解析)-交互

二级C语言笔试311(总分100, 做题时间90分钟)一、选择题一、选择题(下列各题A)、B)、C)、D) 四个选项中,只有一个选项是正确的。

)1.在软件设计中,不属于过程设计工具的是 ______。

SSS_SINGLE_SELA PDL(过程设计语言)B PAD图C N-S图D DFD图分值: 2答案:C[解析] DFD(Data Flow Diagram)是数据流图结构化分析的常用工具。

软件设计中,常见的过程设计工具如下。

(1)图形工具:程序流程图,N-S,PAD,HIPO(2)表格工具:判定表(3)语言工具:PDL(过程设计语言)2.下列选项中,合法的C语言关键字是 ______。

SSS_SINGLE_SELA VARB cherC integerD default分值: 2答案:D[解析] 本题考查C语言基本知识。

本题中default是C语言的关键字。

3.以下程序的输出结果是 ______。

# defineSQR(X)X*X main() { int a=10,k=2,m=1;a/=SQR(k+m)/SQR(k+m);printf("d\n",a);}SSS_SINGLE_SELA 16B 2C 9D 1分值: 2答案:D[解析] 本题考查带参数的宏调用。

a/=SQR(k+m)/SQR(k+m)进行宏替换后得:a=a/(SQR(k+m)/SQR(k+m))=a/(k+m*k+m/k+m*k+m)=10/(2+1*2+1/2+1*2+1) =10/(2+2+0+2+1)=10/7/1。

4.若有以下说明和语句:int c[4][5],(*p)[5];p=C;能够正确引用c数组元素的是 ______。

SSS_SINGLE_SELA p+1B *(p+1)C *(p+1)+3D *(p[0]+2)分值: 2答案:D[解析] p是指向一个一维数组的指针,选项A、B和C中都是地址,而非数组元素。

计算机二级c语言考试真题及答案详解

计算机二级c语言考试真题及答案详解

计算机二级c语言考试真题及答案详解一、单项选择题(每题2分,共40分)1. 在C语言中,以下哪个选项是合法的整型常量?A. 0x12B. 0x12.3C. 0x12LD. 0x12.3L答案:A2. 若有定义int a=1, b=2;,则以下哪个表达式的值不为真?A. a<bB. a<=bC. a>bD. a!=b答案:C3. 在C语言中,以下哪个选项是合法的字符串字面量?A. "Hello, World"B. 'Hello, World'C. "Hello, World\n"D. "Hello, World\0"答案:A4. 下列哪个函数不能正确计算数组元素的总和?A. sum = 0; for(i=0; i<n; i++) sum += array[i];B. sum = 0; for(i=0; i<n; i++) sum = sum + array[i];C. sum = 0; for(i=0; i<n; i++) sum = array[i];D. sum = 0; for(i=0; i<n; i++) sum += array[i];答案:C5. 在C语言中,以下哪个选项是合法的函数声明?A. int add(int, int);B. int add();C. int add(int a, int b);D. int add(a, b);答案:C6. 若有定义int a[10];,则以下哪个表达式是合法的数组元素访问?A. a[10]B. a[-1]C. a[3.5]D. a[3]答案:D7. 在C语言中,以下哪个选项是合法的指针声明?A. int *ptr;B. int *ptr[];C. int ptr*;D. int ptr[];答案:A8. 若有定义int x=10;,则以下哪个表达式是合法的赋值语句?A. x = x + 1;B. x = 1 + x;C. x = x++;D. x = ++x;答案:A9. 在C语言中,以下哪个选项是合法的循环语句?A. for(;;)B. while(1)C. do {} while(0)D. for(;;) {}答案:D10. 若有定义int a[5] = {1, 2, 3, 4, 5};,则以下哪个表达式是合法的数组元素访问?A. a[5]B. a[-1]C. a[2.5]D. a[2]答案:D11. 在C语言中,以下哪个选项是合法的switch语句?A. switch(x) { case 1: break; }B. switch(x) { default: break; }C. switch(x) { case 1: case 2: break; }D. switch(x) { case 1: default: break; }答案:C12. 若有定义int x=5;,则以下哪个表达式是合法的自增运算?A. x++;B. ++x;C. x--;D. --x;答案:A13. 在C语言中,以下哪个选项是合法的函数原型声明?A. void func();B. int func(int);C. void func(int a);D. All of the above答案:D14. 若有定义int a=3;,则以下哪个表达式是合法的位运算?A. a & 2B. a | 2C. a ^ 2D. All of the above答案:D15. 在C语言中,以下哪个选项是合法的宏定义?A. #define PI 3.14159B. #define PI 3.14159fC. #define PI 3.14159LD. All of the above答案:A二、编程题(每题30分,共60分)1. 编写一个函数,计算并返回一个整数数组中所有元素的和。

二级C语言笔试-120_真题(含答案与解析)-交互

二级C语言笔试-120_真题(含答案与解析)-交互

二级C语言笔试-120(总分90, 做题时间90分钟)一、选择题在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的。

1.x,y,z被定义为int型变量,若从键盘给x,y,z输入数据,正确的输入语句是SSS_SINGLE_SELA INPUT x、v、z;B scanf("%d%d%d",&x,&y,&z);C scanf("%d%d%d",x,y,z);D read("%d%d%d",&x,&y,&z);分值: 1答案:B[命题目的] 考查格式输入函数scanf的使用。

[解题要点] scanf函数的一般格式是:scanf(格式控制,地址表列)该格式中,地址表列中应是变量地址,而不是变量名。

[考点链接] 调用putchar和getchar函输出和输入字符。

2.以下叙述正确的是( )。

SSS_SINGLE_SELA 在C语言程序中,main函数必须位于程序的最前面B C语言程序的每行中只能写一条语句C C语言本身没有输入输出语句D 在对一个C语言程序进行编译的过程,可发现注释中的拼写错误分值: 1答案:C[命题目的] 考查C语言的几个基本概念。

[解题要点] 选项A)中,main函数可以放在程序的任何位置,不一定要放在程序的最前面,不论main函数放在什么位置,程序的执行却总是从main函数开始的;选项B)中,因为C语言的语法限制不严格,所以可以多条语句放在同一行上;选项C)是正确的,C语言中没有专门的输入输出语句,输入输出是通过使用输入输出库函数来实现的;选项D)是错误的,因为C语言中的注释是不会被编译的。

[考点链接] 掌握算法的相关特性。

3.以下与函数fseek(fp,0L,SEEk_SET)有相同作用的是SSS_SINGLE_SELA feof(fp)B ftell(fp)C fgetc(fp)D rewind(fp)分值: 1答案:D[命题目的] fseek函数的功能与作用。

全国计算机二级C语言_考试真题电子版

全国计算机二级C语言_考试真题电子版

全国计算机二级C语言_考试真题电子版1、下列叙述中正确的是()A.所有数据结构必须有根结点B.所有数据结构必须有终端结点(即叶子结点)C.只有一个根结点,且只有一个叶子结点的数据结构一定是线性结构D.没有根结点或没有叶子结点的数据结构一定是非线性结构[答案]D[解析]D项正确,线性结构的特点是:(1)集合中必存在第一个元素”且惟一;(2)集合中必存在“最后个元素”且惟一;(3)除最后一个元素外,其他数据元素均有惟一的“后继”,除第一个元素外其他数据元素均有惟一的“前驱”。

所以没有根结点或没有叶子结点的数据结构一定是非线性结构。

AB两项错误,不是所有数据结构都必须有根结点和叶子结点;C项错误,数据结构中若有中间结点不满足只有一个前件或者后件的条件,就不是线性结构。

答案选择D选项2、以下叙述中错误的是()A.C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令B.C程序经过编译、链接步骤之后才能形成一个真正可执行的二进制机器指令文件C.用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中D.C语言源程序经编译后生成后缀为.obi的目标程序[答案]A[解析]A项错误,注释语句不会被翻译成二进制的机器指令。

C 源程序经过C编译程序编译之后生成后缀为obi的二进制文件(称为目标文件),然后由“链接程序”(Link)的软件把obi文件与各种库函数连接起来生成一个后缀为exe的可执行文件。

答案选择A选项3、C语言主要是借助以下()功能来实现程序模块化的。

A.定义函数B.定义常量和外部变量C.三种基本结构语句D.丰富的数据类型[答]A[解析]C程序的模块化主要通过函数来实现。

C语言允许对函数单独进行编译,从而可以实现模块化答案选择A选项。

4、下列叙述中正确的是()。

A.栈是“先进先出”的线性表B.队列是“先进后出”的线性表C.循环队列是非线性结构D.有序线性表既可以采用顺序存储结构,也可以采用链式存储结构[答案]D[解析]有序的线性表既可采用顺序存储结构,也可以采用链式存储结构。

计算机等级考试二级C语言真题

计算机等级考试二级C语言真题

计算机等级考试二级C语言真题计算机等级考试二级C语言真题导语:C语言之所以命名为C,是因为 C语言自Ken Thompson创造的B语言,而 B语言那么自BCPL语言。

下面是计算机二级考试C语言的真题,欢送参考!(1)以下表达中正确的选项是A.栈是“先进先出”的线性表B.队列是“先进先出”的线性表C.循环队列是非线性构造D.有序性表既可以采用顺序存储构造,也可以采用链式存储构造(2)支持子程序调用的数据构造是A.栈B.树C.队列D.二叉树(3)某二叉树有5个度为2的结点,那么该二叉树中的.叶子结点数是A.10B.8C.6D.4(4)以下排序方法中,最坏情况下比拟次数最少的是A.冒泡排序B.简单项选择择排序C.直接插入排序D.堆排序(5)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。

下面属于应用软件的是A.编译软件B.操作系统C.教务管理系统D.汇编程序(6)下面表达中错误的选项是A.软件测试的目的是发现错误并改正错误B.对被调试的程序进展“错误定位”是程序调试的必要步骤C.程序调试通常也称为DebugD.软件测试应严格执行测试方案,排除测试的随意性(7)耦合性和内聚性是对模块独立性度量的两个标准。

以下表达中正确的选项是A.进步耦合性降低内聚性有利于进步模块的独立性B.降低耦合性进步内聚性有利于进步模块的独立性C.耦合性是指一个模块内部各个元素间彼此结合的严密程度D.内聚性是指模块间互相连接的严密程度(8)数据库应用系统中的核心问题是A.数据库设计B.数据库系统设计C.数据库维护D.数据库管理员培训(9)有两个关系R,S如下:RABCa32b01c21SABa3b0c2由关系R通过运算得到关系S,那么所使用的运算为A.选择B.投影C.插入D.连接(10)将E-R图转换为关系形式时,实体和联络都可以表示为A.属性B.键C.关系D.域。

二级C语言笔试-340_真题-无答案

二级C语言笔试-340_真题-无答案

二级C语言笔试-340(总分77,考试时间90分钟)一、选择题1. 没有关系R和S,关系代数表达式为R-(R-S)表示的是A) RDS B) R-S C) RUS D) R÷S2. 下列叙述中正确的是A) 栈是“先进先出”的线性表B) 队列是“先进后出”的线性表C) 循环队列中元素的个数是由队头指针和队尾指针共同决定的D) 循环队列中队头指针是固定不变的3. 以下正确的程序段是A) char str1[]="12345",str2[]="abcdef";B) char str[10],*st="abcde";strcat(str,st);C) charstr[10]=" "。

*st="abcde";strcat(str,st);D) char*st1="12345",*st2="abcde";strcat(st1,st2);4. 结构化程序设计的核心和基础是( )。

A) 结构化分析方法 B) 结构化设计方法C) 结构化设计理论 D) 结构化编程方法5. 设有定义:int a,+pa=&a;,以下scanf语句中能正确为变量a读入数据的是( )。

A) scanf("%d",pa ); B) scanf("%d",a );C) scanf(%d",&pa ); D) scanf("%d",*pa );6. 下列叙述中正确的是( )。

A) 一个算法的空间复杂度大,则其时间复杂度必定大B) 一个算法的空间复杂度大,则其时间复杂度必定小C) 一个算法的时间复杂度大,则其空间复杂度必定小D) 上述三种说法都不对7. 若希望下列的程序运行后输出25,程序空白处的正确选项是( )。

main()int i,j=50,a[]=7,4,10,5,8;for( )j+=a[i];primf("%d,j-40);A) i=1;i<4;++i B) i=1;i<3;++i C) i=4;i>2;i-- D) i=2;i<4;++i8. 下述函数功能是______。

二级C语言笔试315_真题(含答案与解析)-交互

二级C语言笔试315_真题(含答案与解析)-交互

二级C语言笔试315(总分110, 做题时间90分钟)一、选择题(下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。

)1.下列函数定义中,会出现编译错误的是 ______。

SSS_SINGLE_SELA max(int x,int y,int * { *z=x>y? x:y;}B int max(int x, {intz; z=x>y? x;y;returnz;}C max(int x,int { int z; z=x>y? x:y; return(;}D int max(int x,int { return(x>y?x:;}分值: 2答案:B[解析] 本题考查函数的定义。

选项B中函数形参y没有说明数据类型。

2.下面程序的功能是输出以下形式的金字塔图案:* * * * * * * * * * * * * * * * main() { int i,j;for(i=1;i<=4;i++;) { for(j=1;j<=4-i;j++)printf(" ");for(j=1; ;j <=________;j++)printf("*");printf("\n");} } 在下划线处应填入的是 ______。

SSS_SINGLE_SELA iB 2*i-1C 2*i+1D i+2分值: 2答案:B[解析] 根据题意可知第二个j循环结束的条件是第i行打印出的"*"的个数。

3.已有定义:int i,a[10],*p;;,则合法的赋值语句是 ______。

SSS_SINGLE_SELA p=100;B p=a[5];C p=a[2]+2;D p=a+2;分值: 2答案:D[解析] 因p是指针变量,故选项D正确。

4.以下叙述中正确的是 ______。

SSS_SINGLE_SELA C语言的源程序不必通过编译就可以直接运行B C语言中的每条可执行语句最终都将被转换成二进制的机器指令C C源程序经编译形成的二进制代码可以直接运行D C语言中的函数不可以单独进行编译分值: 2答案:B[解析] C语言编写的程序必须经过编译、连接后才可以执行,选项A错误;C 语言编译后生成的二进制代码是目标文件,需进一步连接生成.exe文件方可执行,选项C错误;C语言中函数可以单独编译。

二级C语言笔试-323_真题(含答案与解析)-交互

二级C语言笔试-323_真题(含答案与解析)-交互

二级C语言笔试-323(总分100, 做题时间90分钟)一、选择题1.在C语言中,引用数组元素时,其数组下标的数据类型允许是( )。

SSS_SINGLE_SELA 整型表达式B 整型常量C 整型常量或整型表达式D 任何类型的表达式分值: 2答案:C[解析] 在C语言中,引用数组元素时,其数组下标的数据类型可以是整型常量,也可以是整型表达式。

2.设计数据库的存储结构属于( )。

SSS_SINGLE_SELA 需求分析B 概念设计C 逻辑设计D 物理设计分值: 2答案:D[解析] 物理设计阶段主要解决选择文件存储结构和确定文件存取方法的问题,包括选择存储结构、确定存取方法、选择存取路径、确定数据的存放位置。

3.算法的空间复杂度是指( )。

SSS_SINGLE_SELA 算法程序的长度B 算法程序中的指令条数C 算法程序所占的存储空间D 算法执行过程中所需要的存储空间分值: 2答案:D[解析] 一个算法的空间复杂度,一般是指执行这个算法所需的存储空间。

一个算法所占用的存储空间包括算法程序所占用的空间、输入的初始数据所占用的存储空间及算法执行过程中所需要的额外空间。

4.在位运算中,操作数每左移两位,其结果相当于( )。

SSS_SINGLE_SELA 操作数乘以2B 操作数除以2C 操作数除以4D 操作数乘以4分值: 2答案:D[解析]本题主要考查左移、右移对数据值的影响,左移n位相当于乘以2的n 次幂,右移n位相当于除以2的n次幂。

5.若有说明:int a[][3]=0,0;则不正确的叙述是( )。

SSS_SINGLE_SELA 数组a的每个元素的初值都是0B 数组a的第一维大小为1C 数组a的行数为1D 只有元素a[0Ⅱ0]和a10][1]可得到初值0,其余元素均得不到初值0分值: 2答案:D[解析] 本题考查给二维数组元素赋值。

给二维数组元素赋值时应注意两点:①在对二维数组元素赋初值时,可以只对部分元素赋初值,未赋初值的元素自动取0。

计算机等级考试二级c语言真题

计算机等级考试二级c语言真题

计算机等级考试二级C语言真题一、选择题((1)-(40)题每题1分,(41)-(50)题每题2分,共60分)下列各题 A) 、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。

(1) 计算机的存储器完整的应包括A) 软盘、硬盘 B) 磁盘、磁带、光盘C) 内存储器、外存储器 D) RAM、ROM(2) 计算机中运算器的作用是A) 控制数据的输入/输出 B) 控制主存与辅存间的数据交换C) 完成各种算术运算和逻辑运算 D) 协调和指挥整个计算机系统的操作(3) 软磁盘处于写保护状态时,其中记录的信息A) 绝对不会丢失B) 不能被擦除,但能追加新信息C) 不能通过写磁盘操作被更新D) 不能以常规方式被删除,但可以通过操作系统的格式化功能被擦除(4) 光盘根据基制造材料和记录信息的方式不同,一般可分为A) CD、VCDB) CD、VCD、DVD、MP3C) 只读光盘、可一次性写入光盘、可擦写光盘D) 数据盘、音频信息盘、视频信息盘(5) 在计算机系统中,可执行程序是A) 源代码 B) 汇编语言代码 C) 机器语言代码 D) ASCII码(6) 计算机软件系统包括A) 操作系统、网络软件 B) 系统软件、应用软件C) 客户端应用软件、服务器端系统软件 D) 操作系统、应用软件和网络软件(7) 目前,一台计算机要连入Internet,必须安装的硬件是A) 调制解调器或网卡 B) 网络操作系统C) 网络查询工具 D) WWW浏览器(8) 在多媒体计算机系统中,不能存储多媒体信息的是A) 光盘 B) 磁盘 C) 磁带 D) 光缆(9) 要将当前盘当前目录下一个文本文件内容显示在屏幕上,正确的命令形式是A) TYPE a*.* B) TYPE abc.exeC) TYPE pro.c>PRN D) TYPE abc.txt(10) 下列更改文件名的命令中正确的是A) REN A:file1 C:F1 B) RENAME A: A:file1 C:F1C) REN A:file1 F1 D) REN A:file1 \SUB\F1(11) 已知A盘为DOS系统启动盘,只有A:\DOS下有自动批处理文件,其中内容为:CD\DOSMD USERCD USER由A盘启动DOS系统后,A盘的当前目录是A) \DOS B) \DOS\USER C) \ D) \USER(12) MS-DOS是A) 分时操作系统 B) 分布式操作系统C) 单用户、单任务操作系统 D) 单用户、多任务操作系统(13) 在Windows操作系统中,不同文档之间互相复制信息需要借助于A) 剪切板 B) 记事本 C) 写字板 D) 磁盘缓冲器(14) 在Windows操作系统中A) 同一时刻可以有多个活动窗口B) 同一时刻可以有多个应用程序在运行,但只有一个活动窗口C) 同一时刻只能有一个打开的窗口D) DOS应用程序窗口与Windows应用程序窗口不能同时打开着(15) 下列叙述中正确的是A) 所有DOS应用程序都可以在Windows操作系统中正确运行B) 所有DOS应用程序都不能在Windows操作系统中正确运行C) 大部分DOS应用程序可以在Windows操作系统中正确运行D) 为DOS5.0以上版本操作系统编写的应用程序可以在Windows操作系统中正确运行(16) 下列叙述中正确的是A) C语言编译时不检查语法B) C语言的子程序有过程和函数两种C) C语言的函数可以嵌套定义D) C语言所有函数都是外部函数(17) 以下所列的C语言常量中,错误的是A) 0xFF B) 1.2e0.5 C) 2L D) '\72'(18) 下列选项中,合法的C语言关键字是A) VAR B) cher C) integer D) default(19) 以下变量x.、y、z均为double类型且已正确赋值,不能正确表示数学式子的C语言表达式是A) x/y*z B) x*(1/(y*z)) C) x/y*1/z D) x/y/z(20) 若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是A) -3 B) 9 C) -12 D) 6(21) 设x、y、t均为int型变量,则执行语句:x=y=3;t=++x||++y;后,y的值为A) 不定值 B) 4 C) 3 D) 1(22) 若变量已正确说明为float类型,要通过语句scanf("%f %f %f ",&a,&b,&c);给a赋于10.0,b 赋予22.0,c赋予33.0,不正确的输入形式是:A) 10<回车> B) 10.0,22.0,33.0<回车>22<回车>33<回车>C) 10.0<回车> D) 10 22<回车>22.0 33.0<回车> 33<回车>(23) 若执行以下程序时从键盘上输入9,则输出结果是A) 11 B) 10 C) 9 D) 8Main0{ int n;scanf("%d",&n);if(n++<10) printf("%d\n",n);else printf("%d\n",n--);}(24) 若a、 b、c1、c2、x、y、均是整型变量,正确的switch语句是A) swich(a+b); B) switch(a*a+b*b){ case 1:y=a+b; break; {case 3:case 0:y=a-b; break; case 1:y=a+b;break;} case 3:y=b-a,break;}C) switch a D) switch(a-b){ case c1 :y=a-b; break {default:y=a*b;breakcase c2: x=a*d; break case 3:case 4:x=a+b;breakdefault:x=a+b; case 10:case 11:y=a-b;break;} }(25) 有以下程序段int k=0while(k=1)k++;while 循环执行的次数是A) 无限次 B) 有语法错,不能执行C) 一次也不执行 D) 执行1次(26) 以下程序执行后sum的值是A)15 B)14 C) 不确定 D)0min(){ int i , sum;for(i=1;i<6;i++) sum+=i;printf("%d\n",sum);}(27) 有以下程序段int x=3do{ printf("%d",x-=2); }while (!(--x));其输出结果是A) 1 B) 3 0 C) 1 -2 D) 死循环(28) 若变量c为char类型,能正确判断出c为小写字母的表达式是A) 'a'<=c<= 'z' B) (c>= 'a')||(c<= 'z')C) ('a'<=c)and ('z'>=c) D) (c>= 'a')&&(c<= 'z')(29) 以下所列的各函数首部中,正确的是A) void play(var :Integer,var b:Integer)B) void play(int a,b)C) void play(int a,int b)D) Sub play(a as integer,b as integer)(30) 以下程序的输出结果是A) 0 B) 29 C) 31 D) 无定值fun(int x, int y, int z){ z=x*x+y*y; }main(){ int a=31;fun(5,2,a);printf("%d",a);}(31) 下列程序段的输出结果是A) 2 1 4 3 B) 1 2 1 2 C) 1 2 3 4 D) 2 1 1 2void fun(int *x, int *y){ printf("%d %d", *x, *y); *x=3; *y=4;}main(){ int x=1,y=2;fun(&y,&x);printf("%d %d",x, y);}(32) 下列程序的输出结果是A) 非法 B)a[4]的地址 C)5 D)3main(){ char a[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5;printf("%d",*--p);}(33) 下列程序的运行结果是A) 6 3 B) 3 6 C) 编译出错 D) 0 0void fun(int *a, int *b){ int *k;k=a; a=b; b=k;}main(){ int a=3, b=6, *x=&a, *y=&b;fun(x,y);printf("%d %d", a, b);}(34) 下面程序的输出结果是A) 0 B) 1 C) 10 D) 9main(){ int a[ ]={1,2,3,4,5,6,7,8,9,0,},*p;p=a;printf("%d\n",*p+9);}(35) 当调用函数时,实参是一个数组名,则向函数传送的是A) 数组的长度 B) 数组的首地址C) 数组每一个元素的地址 D) 数组每个元素中的值(36) 设有以下说明语句struct ex{ int x ; float y; char z ;} example;则下面的叙述中不正确的是A) struct结构体类型的关键字 B) example是结构体类型名C) x,y,z都是结构体成员名 D) struct ex是结构体类型(37) 以下只有在使用时才为该类型变量分配内存的存储类说明是A) auto和 static B) auto和 registerC) register和 static D) extern和 register(38) 若fp是指向某文件的指针,且已读到文件末尾,则库函数feof(fp)的返回值是A) EOF B) -1 C) 非零值 D) NULL(39) 以下程序的输出结果是A) 20 B) 21 C) 22 D)23main(){ int i, k, a[10], p[3];k=5;for (i=0;i<10;i++) a[i ]=i;for (i=0;i<3;i++) p[i ]=a[i *(i+1)];for (i=0;i<3;i++) k+=p[i] *2;printf("%d\n",k);}(40) 以下程序的输出结果是A) 1,5,9 B) 1,4,7 C) 3,5,7 D)3,6,9main(){ int i, x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++) printf("%d,",x[i][2-i]);}(41) 以下程序的输出结果是A) 18 B) 19 C) 20 D)21main(){ int a[3][3]={ {1,2},{3,4},{5,6} },i,j,s=0;for(i=1;i<3;i++)for(j=0;j<=i;j++)s+=a[i][j];printf("%dn",s);}(42) 以下程序的输出结果是A) ABCD B) ABCD C) EFG D) EFGHFGH EFG JK IJKLKL IJ OMmain(){ char w[][10]={ "ABCD","EFGH","IJKL","MNOP"},k;for(k=1;k<3;k++) printf("%s\n",w[k]);}(43) 当执行下面的程序时,如果输入ABC,则输出结果是A) ABC6789 B) ABC67 C) 12345ABC6 D) ABC456789#include "stdio.h"#include "string.h"main(){ char ss[10]="1,2,3,4,5";gets(ss); strcat(ss, "6789"); printf("%s\n",ss);}(44) 假定以下程序经编译和连接后生成可执行文件PROG.EXE,如果在此可执行文件所在目录的DOS 提示符下键入:PROG ABCDEFGH IJKL<回车>,则输出结果为A) ABCDEFG B) IJHL C) ABCDEFGHIJKL D) IJKLABCDEFGHmain( int argc, char *argv[])){ while(--argc>0) printf("%s",argv[argc]);printf("\n");}(45) 以下程序的输出结果是A) 1 B) 2 C) 3 D) 4long fun( int n){ long s;if(n= =1 || n= =2) s=2;else s=n-fun(n-1);return s;}main(){ printf("%ld\n", fun(3)); }(46) 以下程序的输出结果是A) 16 B) 2 C) 9 D) 1#define SQR(X) X*Xmain(){ int a=16, k=2, m=1;a/=SQR(k+m)/SQR(k+m);printf("d\n",a);}(47) 若定义了以下函数:void f(……){……*p=(double *)malloc( 10*sizeof( double));……}p是该函数的形参,要求通过p把动态分配存储单元的地址传回主调函数,则形参p的正确定义应当是A) double *p B) float **p C) double **p D) float *p(48) 以下程序的输出是A) 10 B) 11 C) 51 D) 60struct st{ int x; int *y;} *p;int dt[4]={ 10,20,30,40 };struct st aa[4]={ 50,&dt[0],60,&dt[0],60,&dt[0],60,&dt[0],};main(){ p=aa;printf("%d\n",++(p->x));}(49) 假定建立了以下链表结构,指针p、q分别指向如图所示的结点,则以下可以将q所指结点从链表中删除并释放该结点的语句组是A) free(q); p->next=q->next;B) (*p).next=(*q).next; free(q);C) q=(*q).next; (*p).next=q; free(q);D) q=q->next; p->next=q; p=p->next; free(p);(50) 以下程序的输出结果是A) 0 B) 1 C) 2 D) 3main(){ int x=0.5; char z='a';printf("%d\n", (x&1)&&(z<'z') ); }二、填空题(每空2分,共40分)请将每一个空的正确答案写在答题卡【1】至【20】序号的横线上,答在试卷上不得分。

二级C语言笔试-352_真题-无答案

二级C语言笔试-352_真题-无答案

二级C语言笔试-352(总分118,考试时间90分钟)一、选择题1. 在设计程序时,应采纳的原则之一是( )。

A) 不限制goto语句的使用 B) 减少或取消注解行C) 程序越短越好 D) 程序结构应有助于读者理解2. 若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为 ( )A) a<0B) ! aC) a=0D) a3. 己知int i,x[3][4];,则不能将x[1][1]的值赋给变量i的语句是______。

A) i=*(*(x+1)+1) B) i=*(*(x+1))C) i=x[1][1] D) i=*(x[1]+1)4. 以下程序的输出结果是( )。

main()int i,x[3][3]=9,8,7,6,5,4,3,2,1,*p=&x[1][1];for(i=O;i<4;i+2)printf("%d",p[i]);A) 5 2 B) 5 1 C) 5 3 D) 9 75. 如下程序的输出结果是( )。

#include<stdio.h>main()float x=20,y;if(x<0.0)y=0.0;else if (x<10.0)y=1.0/x;else y=110;printf("%f¨,y);A) 0.000000 B) 0.250000 C) 0.500000 D) 1.0000006. 有以下程序main ( )char a[ ]='a','b', 'c','d', 'e','f','g','h','\0'; int i,j;i=sizeof (a);j=strlen(a);print f (" %d, %d\n" i, j );程序运行后的输出结果是A) 9,9 B) 8,9 C) 1,8 D) 9,87. 以下选项中不合法的标识符是A) ptint B) FOR C) &a D) _008. 十进制数269转换成十六进制数是 ( )A) 10EB) 10DC) 10CD) 10B9. 以下程序的输出结果是int f()static int i=0;int s=1;s+=i; i++;return s;main ( )int i,a=0;for (i=0;i<5; i++) a+=f();printf ( "%d\n" ,a);A) 20 B) 24 C) 25 D) 1510. 有以下程序:main()int a=1,b=2,m=0,n=0,k;k=(n=b>a)||(m=a>b);printf("%d,%d\n"m,k,m);程序运行后的输出结果是( )。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C) Shift+PrintScreen键 D) PrintScreen键
(9) 在Windows环境下,单击当前应用程序窗口中的“关闭”按钮,其功能是
A) 将当前应用程序转为后台运dows后重新启动计算机 D) 终止当前应用程序的运行
(10) 在Windows环境中,粘贴按钮是
A) scanf(“---”,&i,&j,&k);
B) scanf(“%d %d %d”,&i,&j,&k);
C) scanf(“%d,%d,%d”,&i,&j,&k);
D) scanf(“i=%d,j=%d,k=%d”,&i,&j,&k);
(18) 与数学式子 对应的C语言表达式是
A) 3*x^n(2*x-1) B) 3*x**n(2*x-1)
(20) 若有以下程序:
main()
{ int k=2,i=2,m;
m=(k+=i*=k);printf(“%d,%d\n”,m,i);
}
执行后的输出结果是
A) 8,6 B) 8,3 C) 6,4 D) 7,4
(21) 已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2的值是
if(x>=0); if(x>0) y=1;
if(x>0) y=1 ; else y=0;
else y=-1; else y=-1;
(23) 以下选项中,与k=n++完全等价的表达式是
A) k=n,n=n+1 B) n=n+1,k=n C) k=++n D) k+=n+1
(24) 以下程序的功能是:按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出,程序如下:
(13) 以下选项中合法的用户标识符是
A) long B) _2Test C) 3Dmax D) A.dat
(14) 已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示的字符常量‘\101’是
A) 字符A B)字符a C)字符e D)非法的常量
(15) 以下非法的赋值语句是
A) 1 B) 2 C) 3 D) 4
(5) 下列带有通配符的文件名中,能表示文件ABC.TXT的是
A) *BC.? B) A?.* C) ?BC.* D) ?.?
(6) 在多媒体计算机系统中,不能用以存储多媒体信息的是
A) 光缆 B) 软盘 C) 硬盘 D) 光盘
(7) DOS命令“COPY/?”的功能是
A) B) C) D)
(11) 以下叙述中正确的是
A) 构成C程序的基本单位是函数
B) 可以在一个函数中定义另一个函数
C) main()函数必须放在其它函数之前
D) 所有被调用的函数一定要在调用之前进行定义
(12) 以下选项中合法的实型常数是
A) 5E2.0 B) E-3 C) .2E0 D) 1.3E
A) 6 B) 0 C) 2 D) 1
(22) 有一函数, ,以下程序段中不能根据x值正确计算出y值的是
A) if(x>0) y=1; B) y=0;
else if(x==0) y=0; if(x>0) y=1;
else y=-1; else if(x<0) y=-1;
C)y=0; D)if(x>=0)
年月二级C语言笔试真题
———————————————————————————————— 作者:
———————————————————————————————— 日期:
2002年9月全国计算机等级考试二级C语言试卷(含答案)
一、选择题((1)—(40)每题1分,(41)—(50)每题2分,共60分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1) 在32位计算机中,一个字长所占的字节数为
A) 1 B) 2 C) 4 D) 8
(2) 与十进制数511等值的十六进制数为
A) 1FF B) 2FF C) 1FE D) 2FE
(3) 能将高级语言编写的源程序转换成目标程序的是
A) 编程程序 B) 编译程序 C) 解释程序 D) 链接程序
(4) 在计算机系统中,存储一个汉字的国标码所需要的字节数为
}
}
上述程序运行后结果不正确,调试中发现有一条语句出现在程序中的位置不正确。这条语句是
A) sum=0.0; B) sum+=score;
C) ave=sun/4.0; D) printf(“NO%d:%f\n”,n,ave);
(25) 有以下程序段
main()
{ int n,k;
float score ,sum,ave;
sum=0.0;
for(n=1;n<=10;n++)
{ for(k=1;k<=4;k++)
{ scanf(“%f”,&score); sum+=score;}
ave=sum/4.0;
printf(“NO%d:%f\n”,n,ave);
A) 将当前盘当前目录中的所有文件复制到当前盘的根目录下
B) 将当前盘当前目录中所有以单个字符命名的文件复制到当前盘的根目录下
C) 以提示方式复制文件
D) 显示COPY命令的帮助信息
(8) 在Windows环境下,若要将当前活动窗口存入剪贴板,则可以按
A) Ctrl+PrintScreen键 B) Ctrl+PrintScreen键
A) n=(i=2,++i); B)j++; C) ++(i+1); D)x=j>0;
(16) 设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是
A)6.500000 B)6 C) 5.500000 D) 6.000000
(17) 已知i、j、k为int型变量,若从键盘输入:1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是
C) 3*pow(x,n)*(1/(2*x-1)) D) 3*pow(n,x)/(2*x-1)
(19) 设有定义:long x=-123456L;,则以下能够正确输出变量x值的语句是
A)printf(“x=%d\n”,x); B) printf(“x=\n”,x);
C)printf(“x=L\n”,x); D)printf(“x=%LD\n”,x);
相关文档
最新文档