2009福建专升本计科类真题_第1页
2009福建专升本计科类真题_第2页
2009福建专升本计科类真题_第3页
2009福建专升本计科类真题_第4页
2009福建专升本计科类真题_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

C012009年福建省高职专升本科入学考试软件工程计算机科学与技术专业知识试卷(考试时间150分钟,满分300软件工程计算机科学与技术专业知识试卷答题说明:请将答案写在答题纸相应的位置上。注意事项:答案写在试卷上一律不给分。第一部分c语言程序设计(共100分)一、单项选择题(本大题共30小题,每小题2份,共60份)在每小题列出的四个备选项中只有一个是符合题目要求的,请将正确答案代码填写在答题纸相应位置上。下列选项中,合法的C语言标识符是。my_nameB.$234C.mynameD.23b已知:intx=5;执行完printf("%d",++x);后,输出的结果是:。4B.5C.6D.不确定已知:intx=5,y=3;则逻辑表达式(x-y)&&(y-3)的值为。7B.2C.1D.0已知:inta=3,b=6,c=8;则执行完语句:a=a>b?a(b<c?b:c);后,a的值是。3B.6C.8D.17有如下程序段执行后的结果是。main(){inta=11,b=3;printf("%d,%d",a/b,a%b);}3,2B.11,2C.3,3D.3.3,2有如下程序段:main(){charc;scanf("%c",&c);switch(c){case'A':printf("5");case'B':printf("4");case'C':printf("3");case'D':printf("2");

2009年福建省高职专升本科入学考试软件工程/计算机科学与技术专业知识试卷default:printf("1");}当运行时输入'七回车”,则输出结果是。A.4B.43C.432D.43217.已知字符'a'的ASCII码值为97,'A'的ASCII码值为65,则如下程序段的运行结果是main(){charc='d';inti=c-32;printf("%c,%d",i,i);8.9.10.A.2009年福建省高职专升本科入学考试软件工程/计算机科学与技术专业知识试卷default:printf("1");}当运行时输入'七回车”,则输出结果是。A.4B.43C.432D.43217.已知字符'a'的ASCII码值为97,'A'的ASCII码值为65,则如下程序段的运行结果是main(){charc='d';inti=c-32;printf("%c,%d",i,i);8.9.10.A.d,68B.D,68C.d,100D.D,100如下程序段的执行结果是。main(){intx=1,y=100;while(y>0){x*=2;y/=3;}printf("%d,%d",x,y);}A.8,0B.16,0C.32,0D.64,0如下选项中正确的数组定义是。#definem10;staticinta[m]={3,4,5,6};staticinta[2]={3,4,5,6}staticinta[10]={3,4,5,6};intm=4;staticinta[m]={3,4,5,6}执行程序段:charstr[12];scanf("$s",str);如果输入如下字符串(其中□表示空格):what'sOyourOname?则str的值是。A.what'sB.what's□11.C.what'sOyour如下程序段的运行结果是。main(){inti=5,sum=100;do{sum=sum+(--i);}while(i>=0);printf("%d",sum);}D.what'sOyourOname?A.100B.109C.105D.11012.如下程序段的运行结果是A.1,2,4,5,7,9,10,C.3,6,9,A.a[5][4]B.a[3,4]C.a(3)(4)D.a[3][4]在C语言中,凡不加类型说明的函数,自动。A.按无类型void处理C.按字符类型char处理如下程序段的输出结果是。voidkk(inta,intb){a=a*b;printf("%d,%d,",a,b);}main(){inta=5,b=6;kk(a,++b);printf("%d,%d",a,b);}A.30,6,30,6B.35,6,35,6如下程序段的输出结果是。main(){staticinta[6]={3,6,9,12,15,18};int*c=&a[2];printf("%d,%d",*(c+3),*c+3);}A.18,12B.15,18如下程序段中语法正确的是。A.int*p;p=1000;inta,*p;*p=&a;如下程序段的输出结果是:。intmm(int*a,intb)\{*a=*a+5;b*=3;return*a+b;}main(){inta=3,b=6;intc=mm(&a,b);printf("%d,%d,%d",a,b,c);}A.3,6,9B.8,6,26如下程序段的输出结果是。main()B.按整型int处理D.按浮点型float处理C.30,7,5,7D.35,7,5,718,15D.15,12B.inta,*p;p=&a;inta=1000,*p;pB.按整型int处理D.按浮点型float处理C.30,7,5,7D.35,7,5,718,15D.15,12B.inta,*p;p=&a;inta=1000,*p;p=a;C.8,18,26D.3,18,11voidaa(inta,charb,floatc){c=(float)(a+b);}则下列程序段能够进行函数正确调用的是main(){aa(5.0,'a',5);}main(){int*a;scanf("%d",&a);aa(a,'a',9);}main(){int*a=1;charb='b';floatc=1.0;aa(a,b,c);}main(){int*a;scanf("%d",a);aa(a,'a',3.0);}有如下定义:structstudent{charname[10];floatscore;intage;}stu1,*p;则在C语言程序中给变量stu1赋值正确的是。str1={"ddd",60.0,55};strcpy(stu1,name,"ddd");stu1.score=66.0;stu1.age=15;p=&stu1;p->name="ddd";p->score=66.0;p->age=15;p=&stu1;="ddd";p.score=66.0;p.age=15;下面程序段中语法正确的是。intmm(intx,inty){intx,y;returnx+y;}charstr[10];scanf("%s",&str);inti,a[10];for(i=0;i<=10;i++)scanf("%d",&a[i]);inti,a[10],*p;for(i=0,p=a;p<a+10;p++)scanf("%d",p);已知inta;并且a已经被正确赋值,则下列逻辑表达式中与(也)等价的是。A.(a==0)B.(a>0)C.!(a==1)D.(a==1)若变量已经正确定义,要求程序段完成1到100的累加,下列选项中不能完成此功能的程序段是。for(i=1,sum=0;i<=100;i++)sum=sum+i;i=1;sum=0;while(i++<=100)sum=sum+i;for(i=1;i<=100;i++){sum=0;sum=sum+i;}i=1;sum=0;do{sum=sum+i;}while(++i<=100);已知intk;且k已经正确赋值,则下列表达式中存在语法错误的是。A.2<k<6B.(k<6)++C.k<6&&k>2D.k==1如下程序段的输出结果是。main(){inti,j,a=0;for(i=1;i<=5;i++)for(j=i;j<=5;j++)

a=a+j;printf("%d",a);

}A.10B.25C.55D.7527.语句:printf("%-8.4d",-36);执行时的输出结果是(口表示空格)D.□□□□□-036A.-0.36□口口口B.}A.10B.25C.55D.75D.□□□□□-036main(){inta[10]={34,22,12,66,8,33,22,338,56,99};inti,x=0;for(i=1;i<10;i++)if(a[i]<a[x])x=i;printf("%d",a[x]);}A.8B.34C.99D.338如下程序段的输出结果是。main(){charstr[]={'s','t','u','d','e','n','t','\0'};char*q=str;while(*q!='\0')q++;printf("%d",q-str);}A.5B.6C.7D.8如下程序段的输出结果是。#definen5structstudent{intno;floatscore;}main(){structstudentstr[n]={{1,12.5},{2,55.5},{3,90.5},{4,78.0},{5,34.0}};inti;floata=0,b;for(int=0i<n;i++)a+=stu[i].score;b=a/n;printf("%08.4f",b);}A.0054.1000B.054.1000C.0054.1D.54.10000二、程序阅读题(本大题共4小题,每小题5份,共20分)阅读下列程序,请将运行时输出的结果写在答题纸相应的位置上。31./*程序段中□表示空格*/#include<stdio.h>voidmain(){charstr1[]="good□morning!",str2[20];2009年福建省高职专升本科入学考试软件工程/计算机科学与技术专业知识试卷char*p,*q;for(p=strl;*p!='\0';p++);for(q=str2;--p>=strl;q++)*q=*p;*q='\0';printf("%s",str2);}#include<stdio.h>#definen10voidde(inta[],intx,int*m){inti=x+1;for(;i<=*m;i++)a[i-1]=a[i];*m=*m-1;}voidmain(){staticinta[n]={32,12,12,56,78,12,78,5,32,12};inti,j,x,m=n-1;for(i=0;i<=m;i++){x=a[i];for(j=i+1;j<=m;j++)if(a[j]==x)de(a,j,&m);}for(i=0;i<=m;i++)printf("%d,",a[i]);}#include<stdio.h>voidch(int*a,int*b){intc;c=*a;*a=*b;*b=c;}voidmain(){staticinta[10]={32,5,18,56,98,52,78,15,132,112};intx=0,y=1,i;if(a[x]>a[y])ch(&x,&y);for(i=2;i<10;i++)if(a[i]<a[x])x=i;elseif(a[i]>a[y])y=i;ch(&a[x],&a[y]);for(i=0;i<10;i++)printf("%d,",a[i]);}#include<stdio.h>voidmain(){charstr[]="0342201411";staticinta[10];inti;char*p;for(i=0;i<10;i++)a[i]=0;for(p=str;*p!='\0';p++){i=*p-'0';a[i]++;}for(i=0;i<10;i++)printf("%d",a[i]);}三、完善下列程序(本大题共2小题,每空4分,共20分)请将答案写在答题纸相应的位置上。下面程序求一个二维矩阵的最大值。#include<stdio.h>#definem3#definen4intfindmax(inta[][n])TOC\o"1-5"\h\z{for(i=0;i<m;®)1for(j=0;j<n;j++)if(a[i][j]>max)max=a[i][j];<②;}voidmain(){inti,j,max,③|;for(i=0;i<m;i++)for(j=0;j<n;j++)scanf("%d",&a[i][j]);max=findmax(a);printf("%d",max);}下面程序找出100-200之间的全部素数。#include<stdio.h>#include<math.h>voidmain(){intm,k,i;for(m=101;m<=200;m=m+2){k=sqrt(m);for(i=2;i<=k;@)if(m%i==0)⑤;if(i>k)printf("%d",m);}}第二部分数据结构(共100分)一、单项选择器(本大题共12小题,每小题2分,共24分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将正确答案代码填写在答题纸相应位置上。要表示高校的校、系、班级的有关数据及其关系,A.线性结构B.树结构C.下列函数中渐进时间复杂度最小的是。1.选择—图结构比较合适。D.集合结构2.A.T(n)=nlogn+5000nB.T(n)=n2-8000n.7.8.9.C.T(n)=nlog22n-6000nD.T(n)=2nlog22n-7000n已知一个栈s以及一个输入数列(A,B,C,D,E),每个元素按照A,B,C,D,E顺序进栈一次,进栈后可立即出栈,也可在栈中停留一段时间后再出栈A.A,B,C,D,EB.B,A,E,D,C平均排序效率最好的排序方法是A.直接插入排序C.简单选择排序,C.B.D.则不能得到C,B,A,D,E快速排序冒泡排序_序列。D.D,C,A,B,E某链表中最常用的操作时在已知的一个结点之前插入一个新节点和删除其之前一个结点,则采用存储方式最节省运算时间。A.双向链表B.带头指针的单向链表C.带尾指针的单向链表D.单向循环链表在逻辑结构不变的情况下,不是导致一个图的遍历序列不唯一的因素是。A.出发点不同C.遍历方法不同散列函数有一个共同的要求,即函数值应当尽量以A.最大概率B.最小概率C.下面方法可以判断出一个图中是否存在环A.排序B.C.求最短路径D.最佳二叉搜索(排序)树是。B.存储(物理)结构不同D.画法不同取其值的每个值。正太分布概率D.均等概率(回路)。深度和广度遍历求关键路径A.关键码个数最小的二叉搜索树B.C.、D.退化为线性的二叉搜索树搜索中平均比较次数最小的二叉搜索树任何节点的度数为0或2的二叉搜索树10.是数据的基本单位,即数据集合(对象)中的个体。A.数据结构B.数据项C.数据元素D11.(线性)表是一个。A.有限序列,可以为空B.有限序列,不能为空C.无限序列,可以为空D.无限序列,不能为空12.树是结点的集合,它根节点。A.有0个或1个B.有0个或多个C.有且只有1个D.有1个或1个以上。填空题(本大题共7小题,每空2分,共16分).数据对象在有n个顶点的有向图中,每个顶点的度最大可达以下程序段的时间复杂度是。i=0;j=0;while(i+j<=n){if(i>j)j++;elsei++;}右图所示的二叉树后序遍历的结果是在一个双向链表中p所指节点之前插入一个由指针s所指的新节点,写出可执行的操作序歹0:。(前指和后指的指针域分别为prior和next)(线性)表有两种村粗结构:顺序存储结构和链式存储结构,请就这两种存储结构完成下列填充:存储密度较大,可以随机存取:不可以随机存取,插入和删除操作比较方便。递归的程序执行时使用来保存各层递归调用时的现场信息,以保证可以正确返回。设数组a[M](M为最大空间个数)作为循环队列Q的存储空间,front为队头指针(指向第一个存放数据的位置),rear为队尾指针(指向最后一个存放数据位置的下一个),则判定Q队列满条件是。三、应用题(本大题共4小题,每小题10分,共40分)请将答案写在答题纸相应的位置上20.21.设字符集D={A,B,C,D,E},各字符使用频率20.21.设字符集D={A,B,C,D,E},各字符使用频率W={10,2,5,6,4}。画出对字符进行哈夫曼编码时所对应的哈夫曼树,并给出各字符的编码。用普利姆(Prim)算法从右图中的顶点1开始逐步构建最小支撑(代价生成)树,要求画出构造的每步。3.给定待排关键字集合为{23,14,48,25,5,19},按关键字非递减(从小到大)排序,写出采用冒泡排序的每一趟(最外层循环的每一次)排序结果。1)图示表示右边有向图的邻接表。2)写出从顶点1开始分别进行深度优先遍历的顶点序列各一种。四、算法设计题(本大题共2个小题,每小题10分,共20分)请将答案写在答题纸相应的位置上。假定用一个有头结点循环链表来存储一个有序的线性表,线性表从头到尾为非递减(从小到大)有序(如下图。)用指针current从head开始搜索数据域等于key的元素在线性表位置,如果搜索成功则current指向搜索到的结点,函数返回该指针;如果搜索不成功,函数返回空指针NULL。请在函数SortedlistLocate(head,key)内天空,完成下列算法以实现这种搜索,并使得搜索不成功的平均次数小于链表长度。currenttypedefstructnode{elemtypedata;//数据域structnode*next;//指针域}lnode,*linklist;linkSortedlistLocate(linklisthead,elemtypekey){linklistcurrent;if((1))returnERROR;//错误提示TOC\o"1-5"\h\zcurrent=(2J;while((3)&&(4)■)current=current->next;//循环搜索其值等于key的结点if((5))returncurrent;//找到,返回结点地址elsereturnNULL;//未找到,返回空指针}25.r[]为一维数组,其中r[0]到r[n-1]为待排序的n个元素,排序好的元素仍放在r[0]到r[n-1]中。请写出对该数组进行非递减排序的直接插入排序算法,取名为InsertSort(elemtyper[],intn)。第三部分关系数据库与SQL语言(共100分)一、单项选择题(本大题共20小题,每小题2分,共40分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将正确答案代码填写在答题纸相应位置上。<数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是。A.DBS包括DB和DBMSB.DBMS包括DB和DBS^AC.|DB包括DBS和DBMSD.DBS就是DB,也就是DBMS下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是、I.人工管理阶段II.文件系统阶段III.数据库阶段A.I和IIB.只有IC.II和IIID.只有II下面的选项不是关系数据库基本特征的是。A.不同的列应有不同的数据类型B.不同的列应有不同的列明C.与行的次序无关D.与列的次序无关从一个数据库文件中取出满足某个条件的所有记录形成一个新的数据库文件的操作是操作。A.投影B.连接C.选择D.复制

现有如下关系:患者(患者编号,患者姓名,性别,出生日期,所在单位)医疗(患者编号,医生编号,医生姓名,诊断日期,诊断结果),在此两个表的逻辑关系中,医疗关系中的外码是。A.医生编号和患者编号B.患者姓名C.患者编号和患者姓名D.患者编号SQL语言中,删除一个视图的命令是。A.DELETEB.DROPC.CLEARD.REMOVE7.在SQL语言中,修改数据结构应使用的命令是。A.CHANGEB.CREATEC.ALTERD.DELETE8.下述SQL命令中,允许用户自定义新关系时,引用其他关系的主码作为外码的是。A.INSERTB.REFERENCESC.DELETED.SELECT9.规范化理论是关系数据库进行逻辑设计的理论依据,第一范式是指关系中的每一个属性都是。A.长度不变的B.互不相关的C.互相独立的D.不可分解的10.若用如下的SQL语句创建了一个表SC:CREATETABLESC(SCHAR⑹NOTNULL,CCHAR(3)NOTNULL,SCOREINTEGER,NOTECHAR(20));向SC表插入如下行时,可以被插入。A.('200823','101',NULL,NULL)B.('201009','111',60必修)C.(NULL,'103',80,选修')D.('201132',NULL,86,'')11.规范化理论是数据库阶段的指南和工具。A.需求分析B.概念设计C.逻辑设计D.物理设计12.候选码的属性有。A.多个B.0个C.1个D.1个或多个13.关系模式中,满足3NF的范式。A.可能是2NFB.必定是4NFC.必定是2NFD.必定是BCNF14.■公司中有多个部门和多名职员,每个职员只能属于一个部门,个部门可以有多名职员,从部门到职员的联系类型是。、A.一对多B.一对一C.N对ND.多对多15.能够用条件限定记录的分组的SELECT语句的子句是。A.WHEREB.HAVINGC.GROUPBYD.ORDERBY关系数据模型的三个组成部分中,不包括。A.完整性规则B.数据结构C.恢复D.数据操作在E-R模型中,如果有3个不同的实体型,3个M:N联系,根据E-R模型转换为关系模型的规则,转换为关系的数目是。

A.4C.6B.D.5718.在E-R模型中,用来表示关系的是_OA.椭圆形B.平行四边形C.菱形D.矩形19.删除索引用的SQL语句是。A.DELETEINDEXB.DROPINDEXC.DELETECLUSTEREDINDEXD.DROPCLUSTEREDINDEX20.下列聚合函数中不忽略空值(null)的是。A.SUM(歹0名)B.MAX(列名)C.COUNT(*)D.AVG(列名)二、填空题(本大题共6小题,每空2分,共20分)请将答案写在答题纸相应的位置上。数据库系统常见的数据模型有层次模型、网状模型与三种。关系数据模型中,二维表的列称为,二维表的行称为。数据库管理系统提供四个方面的数据控制功能,包括数据的、数据的完整性控制、和数据恢复。E-R图基本成分包含实体型、和联系。关系模型的三类完整性是指实体完整性、和。数据库设计包括数据库的和数据库的。三、根据题意,用SQL语句实现以下操作(本大题共25分

温馨提示

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

评论

0/150

提交评论