2021年软件学院专业课试题-理工类(answer)_第1页
2021年软件学院专业课试题-理工类(answer)_第2页
2021年软件学院专业课试题-理工类(answer)_第3页
2021年软件学院专业课试题-理工类(answer)_第4页
2021年软件学院专业课试题-理工类(answer)_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

1、PAGE 2021年天津市大学软件学院高职升本专业课试题-理工类考场号 考生号 姓名 第一部分 C语言部分 100分一、单项选择题(共20小题,每题2分,共40分)以下每小题列出的四个备选答案中只有一个符合题目要求,请将正确答案填入“单项选择题答题表”对应的格中,未填入答题表,错选或多选均不得分。表示当x的取值在1,10和200,210范围内为真,否则为假的C语言表达式为 CA. (x=1&x=200&x=1|x=200|x=1&x=200&x=1|x=200|x=210)若有以下定义:int a=0,1,2,3,4,5,6,7,8,9,*p=a,i;其中0i9,则为数组元素ai不正确的引用是

2、 DA. *(p+i)B. *(a+i)C. piD. *ai判断char型变量ch是否为数字的C表达式为 BA. (0=ch&ch=0&ch=0&ch=0&ch=9)以下程序段构成的循环是 Cfor(x=0,y=0;(y!=12&x4);x+) ;A. 无限循环 B. 循环次数不定 C. 执行4次 D. 执行3次以下程序的输出结果是 A#includemain() int i; for(i=1;i=5;i+) if(i%2) printf(*); else continue; printf(#); A. *#*#*# B. *#*#*#*# C. *#*# D. #*#*以下程序的输出结果是

3、 C #include#define MAX(x,y) (x)=(y)?(x):(y)main() int i=10,j=15; printf(%d,10*MAX(i,j); A. 15 B. 100 C. 10 D. 150设有说明:int (*ptr)8;则ptr是 CA. 指向整形变量的指针B. 指向函数的指针,该函数的返回值为int 数据C. 指向一维数组的指针,该数组的基类型为intD. 长度为8的一维指针数组以下程序段的输出结果是 Achar a=0123456789,*p=a+4;printf(%c,*p+);A. 4 B. a4的地址 C. 6 D. 5下面程序的运行结果是 B

4、#include main() int a=1,b=10; do b=a; a+; while(b0); printf(a=%d,b=%dn,a,b); A. a=3,b=11 B. a=2,b=8 C. a=1,b=1 D. a=4,b=9执行下面程序,输入2后的输出结果是 C#include main( ) int k; scanf(%d,&k); switch(k) case 1:printf(%dn,k+);break; case 2:printf(%dn,k+); case 3:printf(%dn,k+);break; default:printf(Full!n); A. 1 B.

5、 2 C. 2 3 D. 2 3 Full若有以下结构体和变量定义,则以下引用方法不正确的是 Dstruct worker int sno; char *name; work,*p=&work;A. work.sno B. (*p).name C. p-sno D. work-snochar s10,*p=s;则以下不正确的表达式是 BA. p=s+1;B. p=s+;C. *(s+1)=*p;D. *p+=s2;以下不能对二维数组a正确初始化的语句是 AA. int a23=1,2,3,4,5,6;B. int a3=1,2,3,4,5,6;C. int a24=1,2,3;D. int a

6、3=1,0,1,1,1;若有以下说明和语句,则输出结果是 Cchar sp=tn0willn;printf(%d,strlen(sp);A. 4B. 3C. 9D. 字符串中有非法字符对于结构体类型,以下说法正确的是 CA. 定义结构体时不能定义结构体变量B. 结构体变量所占的空间等于占空间最大的成员所需空间C. 结构体类型可以作为返回值类型D. 结构体定义后可以与标准类型一样使用,但前面必须使用struct在C语言中,要求运算数必须是整型的运算符是 DA. / B. + C. != D. %以下程序段在VC6.0环境中运行的输出结果是 struct studentinfo char name

7、10; int SNO; char sex; student,*ps=&student;printf(%d,%d,sizeof(student),sizeof(ps);的输出结果是 BA. 15,15B. 15,4C. 15,2D. 4,2根据17题中的结构体和变量定义,不能正确输出name成员的语句是 CA. printf(%s,);B. printf(%s,ps-name);C. printf(%s,*);D. printf(%s,(*ps).name);以下程序的输出结果是 Amain() int a44=1,3,5,2,4,6,3,5,7; pri

8、ntf(%d%d%d%dn,a03,a12,a21,a30); A. 0650B. 147C. 5430D. 输出值不定设有以下变量定义:char str20,i;当输入“zhang空格hong回车”时,能正确读入“zhang hong”的程序段是 CA. scanf(%s,str);B. for(i=0,stri=getchar();stri!=n;) stri+=getchar();C. gets(str);D. for(i=0,stri=getchar();stri!=0;i+) stri=scanf(%c,stri);二、填空题(共10题,每题1分,共10分)请按照试题中对应的标号顺序

9、填写到答题表中C函数中若省略函数类型说明,则该函数类型默认为 int 。局部变量默认的存储类型为 auto 。文件包含命令#include有两种形式,区别是搜索路径不同。包含系统文件string.h应该使用 #include 。如果要限定变量的作用域仅在当前文件有效,应使用 static 关键字。break和continue都可以用于循环结构中,其中 continue 只是结束本次循环,回到循环体第一条语句开始下次循环。C语言变量有四种存储类别,其中关键字extern的含义是 声明外部变量 。静态变量的初始化是在 编译 阶段完成的。数组名作为实参使用时,传送的是 数组首地址 。sizeof运算

10、符的对象即可以是变量,也可以是 常量 。C语言中多维数组可嵌套定义,即n维数组可看作元素类型为 n-1维数组 。三、判断题判断下题是否正确,正确的划,错误的划(每题1分,共15分)在do-while循环中,循环体至少执行一次。( )C语言中局部变量和全部变量可以同名,并且在函数内局部变量优先于全局变量。( )预处理命令都是以#号开头,且每行只能写一条命令。( )定义二维数组时,如果对数组的所有元素赋值,则可省略长度说明。( )C语言要求所有被调用的函数一定要在调用语句之前进行定义。( )函数内定义的静态变量当函数执行完其值依然存在。( )void关键字只能用于定义函数,不能定义变量。( )一个

11、函数直接或间接的调用自己,称作递归调用。( )全局变量是指在main函数中定义的变量。( )for(exp1;exp2;exp3) 语句s;中的s可以是空语句。( )结构体可以与标准类型一样使用,但前面须用struct关键字。( )main函数称为主函数,是个无参函数。( )表达式n=+i等价于n=i;i=i+1;。( )语句char s=test;与char s=t,e,s,t;是等价的。( )C函数中的函数即可以嵌套定义,也可以嵌套调用。( )四、阅读程序题本题共5小题,每小题5分,共25分,请写出程序的运行结果【程序】#include #include main() char i,s58

12、1,max=0; printf(input 5 strings); for(i=0;i5;i+) gets(si); for(i=0;imax) max=i; puts(smax); 【运行结果】写出从键盘输入一下5个字符串时程序的运行结果Program,test,I am a student,wee,computerI am a student【程序】#include main() int i,f1=1,f2=1; for(i=1;i=5;i+) printf(t%dt%d,f1,f2); f1=f1+f2;f2=f1+f2; printf(%d,%dn,f1,f2); 【运行结果】1123

13、581321345589,144【程序】#include void fun(int n) static int fn=1; fn=fn*n; printf(t%d,fn); main() int i; for(i=2;i=5;i+) fun(i); 【运行结果】2624120【程序】void select(int max,int a,int n) int i; max=a0; for(i=1;imax) max=ai; main() int i,max=10,a10=10,20,30,40,50,60,70,80,90,100; select(max,a,10); printf(nmax=%d

14、,max); 【运行结果】max=10【程序】写出输入84时程序运行结果#include main() int score; printf(n input score: );scanf(%d,&score); switch(score/10) case 10: case 9: printf(n 优); case 8: printf(n 良); case 7: case 6: printf(n 及格); default: printf(n 不及格); 【运行结果】良及格不及格五、编程题(本题共1题,10分)已知每张选票上按序印有候选人姓名,要求选民从中勾选3人,多选或少选都视为废票不予统计,统计

15、选票时输入数据的格式为长度为5的由0和1组成的字符串:“1”表示对相应候选人被选中,“0”表示未选中,如“01011”表示第2、4、5个候选人被选中。请编写程序读入每张选票的投票信息,若为有效选票则统计到结果中,当输入空串时结束,输出以下统计结果:1. 总有效投票数。2. 每个候选人姓名及投票数。提示:候选人信息已保存在以下的数组中,无须再从键盘输入。struct item /*保存候选人及得票信息的结构体*/ char name20; /*候选人姓名*/ int count; /*得票数*/ mans5=name1,0,name2,0,name3,0,name4,0,name5,0;#inc

16、lude main() char str6; int i,flag,count=0; gets(str); while(str0!=0) for(flag=0,i=0;i6;i+) if(stri=1) flag+; if(flag=3) count+; for(i=0;i6;i+) if(stri=1) mansi.count+; gets(str); printf(count=%dn,count);for(i=0;i5;i+) printf(%s=%dn,,mansi.count); 第二部分 软件工程概论部分 100分一、单项选择题(共18小题,每题2分,共36分)以

17、下每小题列出的四个备选答案中只有一个符合题目要求,请将正确答案填入“单项选择题答题表”对应的格中,未填入答题表,错选或多选均不得分。软件开发瀑布模型的各个阶段依次是 AA. 分析设计编码测试维护B. 设计定义开发测试维护C. 分析定义设计编码测试D. 设计分析编码测试维护软件可行性研究一般不考虑 DA. 是否有足够的人员和相关的技术的来支持系统开发B. 是否有足够的工具和相关的技术的来支持系统开发C. 待开发软件是否有市场、经济上是否合算D. 待开发软件是由会有质量问题需求分析阶段的主要任务是确定 DA. 软件开发方法B. 软件的总体结构C. 软件开发的费用D. 软件系统的功能结构化分析方法(

18、SA)的主要特点是 AA. 面向数据流自顶向下,逐步求精的方法B. 由内向外进行分析的方法C. 先局部后整体的分析方法D. 使用IPO图形工具分析的方法软件总体设计阶段的任务不包括 CA. 设计软件的模块结构B. 定义接口并建立数据结构C. 模块设计D. 生成模块设计规格说明数据流图中的每个加工至少需要 BA. 一个输入流 B. 一个输出流和一个输入流C. 一个输入或输出流D. 一个输出流以下叙述中模块内聚性最高的是 DA. 逻辑内聚B. 时间内聚C. 通信内聚D. 功能内聚( C )和数据流图共同构成系统的逻辑模型,没有它数据流图就不完整。A. 系统流程图B. E-R图C. 数据字典D. 层

19、次方框图在详细设计阶段经常采用的图形工具包括 DA. PAD图B. 程序流程图C. N-S图D. 以上都是Jackson设计方法是一种面向( C )的软件设计方法。A. 对象B. 数据流C. 数据结构D. 控制结构按照总体设计中启发式规则,模块的作用域和控制域之间的关系应满足 AA. 模块的作用域应在模块的控制域之间B. 模块的控制域应在模块的控制域之间C. 模块的控制域与模块的作用域相互独立D. 以上说法都不对一般来说,在软件生命周期中成本最高的阶段是 DA. 详细设计B. 软件编码C. 软件测试D. 软件维护模块间耦合程度由低到高的顺序是 BA. 控制耦合特征耦合公共耦合内容耦合数据耦合B

20、. 数据耦合控制耦合特征耦合公共耦合内容耦合C. 数据耦合特征耦合控制耦合公共耦合内容耦合D. 内容耦合数据耦合控制耦合特征耦合公共耦合常用的黑盒测试方法不包括 CA. 等价类划分B. 边界值分析C. 逻辑覆盖D. 错误推测软件维护阶段的四类维护活动是 AA. 改正性维护,适应性维护,完善性维护和预防性维护B. 适应性维护,完善性维护,抢救性维护和辅助性维护C. 改正性维护,适应性维护,完善性维护和辅助性维护D. 适应性维护,完善性维护,抢救性维护和预防性维护因计算机软硬件环境的变化而作出的修改软件的过程属于BA. 改正性维护B. 适应性维护C. 完整性维护D. 预防性维护逻辑覆盖方法中,覆盖

21、程度最强的是 AA. 路径覆盖B. 条件覆盖C. 判定条件覆盖D. 语句覆盖以下( B )语句不属于面向对象的语言A. JavaB. CC. C+D. C#二、填空题(共9题,每空1分,共10分)软件工程方法学主要包括3个要素:方法、 工具 和过程。UML中定义9种图用于从不同角度描述系统,其中描述系统物理实现和配置的图有:构件图和 部署 图。面向对象程序设计以 对象 为基本的逻辑构件,通过 继承 机制实现重用性。数据流图可分为变换型数据流图和 事务型 数据流图两大类。一个模块直接调用下级模块的个数称为 扇出 。从工程管理的角度看,软件设计可分为 总体设计 和详细设计两大步骤。“OOD”的含义

22、是 面向对象设计 。相同的操作用于不同的对象上可获得不同的结果,这种现象称为 多态性 。结构化程序设计中程序的三种基本结构是:顺序、选择、 循环 。三、判断题(共15题,每题1分,共15分)判断下列各题是否正确,正确的划,错误的划HIPO图是面向对象设计工具之一。( )测试过程没有发现任何错误,也不能说明软件没有错误。( )数据库设计属于软件概要设计阶段。( )软件就是完成特定功能的程序的集合。( )对象之间的通信仅通过消息传递机制。( )软件可行新分析研究的目的是最小的代价在尽可能的时间内确定该软件项目是否能够开发,是否值得去开发。( )集成测试多用于“灰盒”测试技术,即它即应用黑盒测试技术

23、也是用白盒测试技术。( )瀑布模型可以有效地用户需求的变化,因此适合大型的系统。( )结构化程序设计要求每个模块具有单入口,单出口。( )将软件系统划分为模块时,应尽量做到高内聚低耦合。( )详细设计的结构基本决定了最终程序的质量。( )验收测试是由用户依据软件需求规格说明书单独进行的。( )运用面向对象方法开发的软件一般是由很多较小的对象组成,从而降低了软件产品的复杂性,使得开发和维护更为简单有效。( )瀑布模型在实际的项目中严格顺序执行就可以成功。( )从模块独立性的角度,应尽量使用内容耦合。( )四、名词解释题(共4小题,共9分)软件生命周期(3分)一个软件从定义,开发,使用和维护直至最后被废弃要经历的漫长时期。模块独立性(2分)模块独立性是指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少,且接口简单。白盒测试(2分)又称结构测试、逻辑驱动测试或基于程序的测试,它依赖于对程序内部结构的严密检验,针对特定条件设计测试用例,对软件的逻辑路径进行测试。对象(2分)对象是指客观事物或概念的抽象描述,对象不仅能表示具体的实体,也能表示抽象的规则、计划、事件。五、简单题

温馨提示

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

最新文档

评论

0/150

提交评论