C语言笔试部分(一).doc_第1页
C语言笔试部分(一).doc_第2页
C语言笔试部分(一).doc_第3页
C语言笔试部分(一).doc_第4页
C语言笔试部分(一).doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一套一选择题。 (1)栈和队列的共同特点是A)都是先进先出B)都是先进后出C)只允许在端点处插入和删除元素D)没有共同点(2)已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是A)acbed B)decab C)deabc D)cedba、(3) 链表不具有的特点是A)不必事先估计存储空间B)可随机访问任一元素C)插入删除不需要移动元素D)所需空间与线性表长度成正比(4) 结构化程序设计的3种结构是A)顺序结构、选择结构、转移结构B)分支结构、等价结构、循环结构C)多分支结构、赋值结构、等价结构D)顺序结构、选择结构、循环结构(5) 为了提高测试的效率,应该 A)随机选取测试数据B)取一切可能的输入数据作为测试数据C)在完成编码以后制定软件的测试计划D)集中对付那些错误群集的程序(6)算法的时间复杂度是指A)执行算法程序所需要的时间B)算法程序的长度C)算法执行过程中所需要的基本运算次数D)算法程序中的指令条数(7) 软件生命周期中所花费用最多的阶段是A)详细设计 B)软件编码 C)软件测试 D)软件维护(8)数据库管理系统中用来定义模式、内模式和外模式的语言为 A)C B)Basic C)DDL D)DML(9)下列有关数据库的描述,正确的是A)数据库是一个DBF文件B)数据库是一个关系C)数据库是一个结构化的数据集合D)数据库是一组文件(10)下列有关数据库的描述,正确的是A)数据处理是将信息转化为数据的过程B)数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变C)关系中的每一列称为元组,一个元组就是一个字段D)如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键字,则称其为本关系的外关键字 (11)以下选项中可作为C语言合法常量的是A)-80 B)-080 C)-8e1.0 D)-80.0e(12)以下叙述中正确的是A)用C程序实现的算法必须要有输入和输出操作B)用C程序实现的算法可以没有输出但必须要有输入C)用C程序实现的算法可以没有输入但必须要有输出D)用C程序实现的算法可以既没有输入也没有输出(13)下列可用于C语言用户标识符的一组是A)void, define, WORDB)a3_b3, _123,CarC)For, -abc, IF CaseD)2a, DO, sizeof(14)有以下程序main()int i=1,j=1,k=2;if(j+k+)&i+)printf(%d,%d,%dn,i,j,k); 执行后输出结果是 A)1,1,2 B)2,2,1 C)2,2,2 D)2,2,3(15)有定义语句:int b; char c10;,则正确的输入语句是A)scanf(%d%s,&b,&c);B)scanf(%d%s,&b,c);C)scanf(%d%s,b,c);D)scanf(%d%s,b,&c);(16)有以下程序:main()inti,s=1;for (i=1;i12?x+10:x-12;printf(%dn,y); 程序的输出结果是A)0 B)22 C)12 D)10(18)已知int t=0;while (t=1).则以下叙述正确的是A)循环控制表达式的值为0B)循环控制表达式的值为1C)循环控制表达式不合法D)以上说法都不对(19)有以下程序:#include#includemain()char aa,b,c,d,e,f,g,h,0;int i,j;i=sizeof(a);j=strlen(a);printf(%d,%db,i,j); 程序运行后的输出结果是A)9,9 B)8,9 C)1,8 D)9,8(20)以下能正确定义一维数组的选项是A)int a5=0,1,2,3,4,5;B)char a=0,1,2,3,4,5,0;C)char a=A,B,C;D)int a5=0123;(21)有以下程序float fun(int x,int y)return(x+y);main()int a=2,b=5,c=8;printf(%3.0fn,fun(int)fun(a+c,b),a-c); 程序运行后的输出结果是A)编译出错 B)9 C)21 D)9.0(22)下面的程序段运行后,输出结果是int i,j,x=0;static int a88;for(i=0;i3;i+)for(j=0;j3;j+)aij=2*i+j;for(i=0;i8;i+)x+=aij;printf(%d,x);A)9 B)不确定值 C)0 D)18(23)若有语句:char *line5;,以下叙述中正确的是A) 定义line是一个数组,每个数组元素是一个基类型为char为指针变量B) 定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组C) 定义line是一个指针数组,语句中的*号称为间址运算符D) 定义line是一个指向字符型函数的指针(24)下列程序执行后的输出结果是void func(int *a,int b)b0=*a+6; main()int a,b5;a=0; b0=3;func(&a,b); printf(%dn,b0); A)6 B)7 C)8 D)9(25)有如下程序main()char ch25=6937,8254,*p2;int i,j,s=0;for(i=0;i2;i+)pi=chi;for(i=0;i0;j+=2)s=10*s+pij-0;printf(%dn,s);该程序的输出结果是A)69825 B)63825 C)6385 D)693825(26)有以下程序void ss(char *s,char t)while(*s)if(*s=t)*s=t-a+A;s+; main()char str1100=abcddfefdbd,c=d;ss(str1,c); printf(%sn,str1); 程序运行后的输出结果是A)ABCDDEFEDBDB)abcDDfefDbDC)abcAAfefAbAD)Abcddfefdbd(27)下面程序的输出结果是main() int a10=1,2,3,4,5,6,7,8,9,10,*p=a;printf(%dn,*(p+2);A)3 B)4 C)1 D)2(28)有如下程序:#define N 2#define M N+1#define NUM 2*M+1main()int i;for(i=1;i=NUM;i+)printf(%dn,i); 该程序中的for循环执行的次数是A)5 B)6 C)7 D)8(29)有以下程序:#include union pw int i;char ch2;a; main() a.ch0=13;a.ch1=0;printf(%dn,a.i);程序的输出结果是A)13B)14C)208D)209(30)设有以下说明语句typedef struct int n;char ch8; PER;则下面叙述中正确的是A)PER 是结构体变量名B)PER是结构体类型名C)typedef struct 是结构体类型D)struct 是结构体类型(31)下列程序的输出结果是#include stdio.hmain()int i,a=0,b=0;for(i=1;i10;i+)if(i%2=0)a+;continue;b+;printf(a=%d,b=%d,a,b); A)a=4,b=4 B)a=4,b=5 C)a=5,b=4D)a=5,b=5(32)下面程序段的运行结果是char str=ABC,*p=str;printf(%dn,*(p+3);A)67B)0C)字符C的地址D)字符C(33)设有以下说明语句struct stuint a;float b; stutype;则下面的叙述不正确的是A)struct是结构体类型的关键字B)struct stu是用户定义的结构体类型C)stutype是用户定义的结构体类型名D)a和b都是结构体成员名(34)fseek函数的正确调用形式是A)fseek(文件指针,起始点,位移量)B)fseek(文件指针,位移量,起始点)C)fseek(位移量,起始点,文件指针)D)fseek(起始点,位移量,文件指针)(35)对于下述程序,在方式串分别采用wt和wb运行时,两次生成的文件TEST的长度是#includevoid main()FILE *fp=fopen(TEST,);fputc(A,fp);fputc(n,fp);fputc(B,fp);fputc(n,fp);fputc(C,fp);fclose(fp); A)7字节、7字节B)7字节、5字节C)5字节、7字节D)5字节、5字节二填空题。(1)算法的基本特征是可行性、确定性、 【1】和拥有足够的情报。(2)某二叉树中度为2的结点有18个,则该二叉树中有 【2】 个叶子结点。(3)在面向对象的程序设计中,类描述的是具有相似性质的一组 【3】 。(4)通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为 【4】 。(5)数据库管理系统常见的数据模型有层次模型、网状模型和 【5】 3种。(6)在scanf()函数调用语句中,可以在格式字符和%号之间加上一个星号,它的作用是跳过对 应的输入数据;当输入以下数据时,100 200 300 400 500,下面语句的执行结果为【6】。 main() int a,b,c; scanf(%d %*d %d %d,&a,&b,&c); printf(%d %d %d,a,b,c); (7)设有如下宏定义#define MYSWAP(z,x,y)z=x;x=y;y=z;以下程序段通过宏调用实现变量a,b内容交换,请填空。float a=5,b=16,c;MYSWAP(【7】,a,b);(8)阅读下面语句,则程序的执行结果是 【8】。 #include stdio.hmain() int a=-1,b=1,k; if(+a0)&!(b-4) printf(%dn,i); break; printf(%dn,i+); (11)函数 void fun(float *sn, int n)的功能是:根据以下公式计算s,计算结果通过形参指针sn传回;n通过形参传入,n的值大于等于0。请填空。 S=ni=0(-f)i2i+1 void fun( float *sn, int n) float s=0.0, w, f=-1.0; int i=0; for(i=0; i=n; i+) f=【11】* f; w=f/(2*i+1); s+=w; 【12】=s;12)以下程序从输入的10个字符串中找出最长的那个串,请填空。 #include #include #define N 10 main() char strN81,*sp; int i; for(i=0;iN;i+) gets(stri); sp=str0; for(i=1;iN;i+) if(strlen(sp)strlen(stri) 【13】; printf(输出最长的那个串:n%sn,sp);printf(输出最长的那个串的长度:%dn,strlen(sp); (13)下列程序执行输出的结果是【14】。 #include f(int a) int b=0; static c=3; a=c+,b+; return(a); main() int a=2,i,k; for(i=0;i2;i+) k=f(a+); printf(%dn,k); (14)有如图所示的双链表结构,请根据图示完成结构体的定义:lheaddatarchildstruct aa int data;【15】 node; 答案一1. 选择题1. C 解析: 栈和队列都是一种特殊的操作受限的线性表,只允许在端点处进行插入和删除。二者的区别是:栈只允许在表的一端进行插入或删除操作,是一种后进先出的线性表;而队列只允许在表的一端进行插入操作,在另一端进行删除操作,是一种先进先出的线性表。2. D 解析: 依据后序遍历序列可确定根结点为c;再依据中序遍历序列可知其左子树由deba构成,右子树为空;又由左子树的后序遍历序列可知其根结点为e,由中序遍历序列可知其左子树为d,右子树由ba构成,如下图所示。求得该二叉树的前序遍历序列为选项D)。3. B解析: 链表采用的是链式存储结构,它克服了顺序存储结构的缺点:它的结点空间可以动态申请和释放;它的数据元素的逻辑次序靠结点的指针来指示,不需要移动数据元素。但是链式存储结构也有不足之处: 每个结点中的指针域需额外占用存储空间; 链式存储结构是一种非随机存储结构。4. D 解析: 顺序结构、选择结构和循环结构(或重复结构)是结构化程序设计的3种基本结构。5. D 解析: 测试的目的是发现软件中的错误。经验表明,程序中存在错误的概率与该程序中已发现的错误数成正比。这一现象说明,为了提高测试效率,测试人员应该集中对付那些错误群集的程序。6. C 解析: 算法的复杂度主要包括算法的时间复杂度和算法的空间复杂度。所谓算法的时间复杂度是指执行算法所需要的计算工作量,即算法执行过程中所需要的基本运算的次数;算法的空间复杂度一般是指执行这个算法所需要的内存空间。7.D 解析: 软件生命周期分为软件定义、软件开发及软件运行维护3个阶段。本题中,详细设计、软件编码和软件测试都属于软件开发阶段;维护是软件生命周期的最后一个阶段,也是持续时间最长,花费代价最大的一个阶段,软件工程学的一个目的就是提高软件的可维护性,降低维护的代价。8.C 解析: 选项A)、B)显然不合题意。数据定义语言(Data Definition Language,简称DDL)负责数据的模式定义与数据的物理存取构建;数据操纵语言(Data Manipulation Language,简称DML)负责数据的操纵,包括增、删、改等操作。9.C 解析: 数据库(Database,简称DB)是数据的集合,它具有统一的结构形式并存放于统一的存储介质内,是多种应用数据的集成,并可被各个应用程序所共享。数据库中的数据具有集成、共享之特点。10.D 解析: 数据处理是指将数据转换成信息的过程,故选项A)叙述错误;数据的物理独立性是指数据的物理结构的改变,不会影响数据库的逻辑结构,故选项B)叙述错误;关系中的行称为元组,对应存储文件中的记录,关系中的列称为属性,对应存储文件中的字段,故选项C)叙述错误。11-15 ACBCB 16-20 DABDB 21-25 BCAAC 26-28 BAB29.A 解析: 本题中,首先定义了一个共用体pw,其中有两个域:整型变量i和字符数组ch,因为共用体中的域是共享内存空间的,又数组的元素有低到高存储:ch0在低字节,ch1在高字节。整型变量i占两个字节,高位与ch1共用存储空间,低位与ch0共用存储空间。而高位ch1的值为0,所以输出的成员变量i的值就是ch0的值13。30.B 解析: 本题中,typedef声明新的类型名PER来代替已有的类型名,PER代表上面指定的一个结构体类型,此时,也可以用PER来定义变量。31-32 BB33.C 解析: 定义一个结构的一般形式为:struct 结构名成员列表;本题中,stutype是在声明类型的同时定义的struct stu类型的变量。而不是用户定义的结构体类型名。我们需要注意以下几点:类型与变量是不同的概念; 对结构体中的成员,可以单独使用,它的作用与地位相当于普通变量;成员也可以是一个结构体变量; 成员名可以与程序中的变量名相同,二者不代表同一对象。34.B 解析: 本题考查函数fseek的用法。fseek函数的调用形式为:fseek(文件指针,位移量,起始点)起始点用0,1或2代替,0代表文件开始,1为当前位置,2为文件末尾。位移量指以起始点为基点,向前移动的字节数。ANSI C和大多数C版本要求位移量是long型数据。这样当文件的长度大于64k时不致出现问题。ANSI C标准规定在数字的末尾加一个字母L,就表示long型。35.B 解析: 以wt方式写入的是字符文件,转义字符n被看作两个字符来处理。而wb方式写入的是二进

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论