【计算机类职业资格】中级软件设计师下午试题-59及答案解析.doc
《【计算机类职业资格】中级软件设计师下午试题-59及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】中级软件设计师下午试题-59及答案解析.doc(10页珍藏版)》请在麦多课文档分享上搜索。
1、中级软件设计师下午试题-59 及答案解析(总分:90.00,做题时间:90 分钟)一、B试题一/B(总题数:1,分数:15.00)阅读以下说明和流程图,回答问题 1 至问题 3,将解答写在对应栏内。【说明】(1)流程图描述某大型商店商品销售的数据处理流程。(2)商店设有若干柜台,同一种商品可能在几个柜台上销售,各柜台每天提供一组日销售数据,其格式如下:日期、柜台号、商品代码、销售数量、商品代码、销售数量(3)数据处理系统每日产生一份反映各柜台当日销售金额和商店日销售金额的“日销售金额报告”,必要时还产生一份“商品请购报告”,给出那些低于最低库存量的商品代码、商品名称、最低库存量和实际库存量。处
2、理过程中产生存档的“日销售文件”和临时工作文件“日销售量文件”和“旧销售金额文件”。(4)系统中所用到的数据均来自数据文件。(5)流程图中的商品库存文件的记录已按关键字“商品代码”排序。(分数:15.00)(1).【问题 1】指出商品库存文件的记录中必须包括哪些数据项?分别指出在日销售文件,日销售量文件和日销售金额文件的记录中至少应包括哪些数据项,同时不产生数据冗余?错误清单可能指出哪些错误?(分数:5.00)_(2).【问题 2】简要叙述处理 6 的主要内容。(分数:5.00)_(3).【问题 3】如果删除流程图中的虚框部分,日销售文件的记录中应增加什么数据项?(分数:5.00)_二、B试题
3、二/B(总题数:1,分数:15.00)阅读以下说明,回答问题 1 至问题 3,将解答写在对应栏内。【说明】有如下关系数据库:S(SNO,SN,STATUS,CITY)P(PNO,PN,COLORS,WEIGHT)J(JNO,JN,CITY)SPJ(SNO,PNO,JNO,QTY)其中,S 为供应单位,P 为零件,J 为工程项目,SPJ 为工程订购零件的订单,其语义为:某供应单位供应某种零件给某个工程,请用 SQL 完成下列操作。(分数:15.00)(1).【问题 1】求为工程 J1 提供红色零件的供应商代号。(分数:5.00)_(2).【问题 2】求供应商与工程所在城市相同的供应商提供的零件代
4、号。(分数:5.00)_(3).【问题 3】求至少有一个和工程不在同一城市的供应商提供零件的工程代号。(分数:5.00)_三、B试题三/B(总题数:1,分数:15.00)阅读以下说明和图,回答问题 1 至问题 3,将解答写在对应栏内。【说明】某教学管理系统的用户是教学管理人员、教师和学生。系统主要提供学生选课管理和学生成绩管理两方面的功能。(1)学生选修课管理主要功能是管理新学期开始时,学生对选修的课程进行选课注册工作。新学期开始后的前两周为学生试听、选课注册时间;允许校内各院系学生跨专业跨年级选修课程;学生可以在校园网的任何一个终端进行选课。新学期选修课程表生成:各学院教学管理人员在新学期开
5、始前,将准备开设的选修课程名称、课程代码、总课时、上课时间、学分、任课教师和上课教室录入系统,供学生选课使用。新学期开学两周后,系统自动将实际选课学生少于 10 人的课程停开,并删除该课程;教学管理人员打印学生选课注册名单和开课通知书,送交有关部门和任课教师。学生选课注册:新学期开学前两周为学生试听、选课注册时间,并允许改变或取消注册申请。学生调用待选课程表,系统显示课程名、课程代码、任课教师、上课时间、总课时、上课教室、学分和本课程已选修人数。学生所选几门课程在上课时间上不能冲突;若一门课程实际选课学生已达到 40 人时,停止选课。当学生退出系统时,系统提示该学生所选的几门课程、任课教师、上
6、课时间、教室、学分和学分总计。选修课程查询:选修课程表信息查询,用户是教师、学生和教学管理人员。系统显示课程名、课程代码、任课教师、上课时间、总课时、上课教室、学分和本课程已选修人数。查询关键词可为学院名称、专业、授课教师等。学生选课情况查询:教师和教学管理人员可以查看学生的选课情况。查询关键词可以为学生姓名(学号)、课程名称(课程代码)、授课教师等。学生只能查自己所选课程内容,不允许查其他同学选课情况。教师简历查询:用户是学生、教师和教学管理人员。查询关键词可为教师姓名、性别、职称、年龄等单关键词或组合关键词。信息统计与报表生成:各学院教学管理人员对学生选课注册信息进行统计(按课程、专业等)
7、,打印汇总报表。把学生选课注册信息传送到财务管理系统,计算学生应交纳的费用。(2)学生成绩管理学生考试成绩录入:各学院教学管理人员将学生考试成绩录入系统。录入学生成绩时,系统自动检查财务系统传来的选课交费信息,核对该学生是否已经交纳本门课程的费用,没有交纳费用者,不给成绩。成绩查询:教师和教学管理人员可查询学生各门课程的成绩。查询关键词可为学生姓名(学号),课程名(课程代码)等。学生只能查自己各门课程的成绩,不允许查其他同学成绩。成绩汇总与报表生成:教学管理人员对学生考试成绩信息进行统计(按学生、课程、专业等),打印汇总报表。向学校教务管理系统发送汇总信息表格等,不反馈信息。现在已建立教学管理
8、最高层用例图,如下:(分数:15.00)(1).【问题 1】完成学生成绩管理子系统用例图。(分数:5.00)_(2).【问题 2】UML 用例间的关系主要有 4 种:继承关联、扩展关联、包含关联和使用关联。请说明并举例。(分数:5.00)_(3).【问题 3】说明用例之间关联的选择原则。(分数:5.00)_四、B试题四/B(总题数:1,分数:15.00)1.【说明】下面是一个用 C 编写的快速排序算法。为了避免最坏情况,取基准记录 pivot 时,采用从left、right 和 mid=(left+right)/2中取中间值,并交换到 right 位置的办法。数组 a 存放待排序的一组记录,数
9、据类型为 T,left 和 right 是待排序子区间的最左端点和最右端点。 void quicksort (int a, int left, int right) int temp; if (leftright) hat pivot = median3 (a, left, right); /三者取中子程序 int i = left, j = right-1; for(;) while (i j while (i j if(ij) temp = ai; aj = ai; ai = temp; i+; j-; else break; if (ai pivot) temp = ai; ai = a
10、right; aright = temp; quicksort(U (1) /U); /递归排序左子区间 quieksort(a,i+1 ,right); /递归排序右子区间 void median3 (int a, int left, int right) int mid=U (2) /U; int k = left; if(amid ak)k = mid; if(ahigh ak) k = high; /选最小记录 int temp = ak; ak = aleft; aleft = temp; /最小者交换到 left if(amid aright) temp=amid; amid=ar
11、ight; aright=temp; 消去第二个递归调用 quicksort (a,i+1,right)。 采用循环的办法: void quicksort (int a, int left, int right) int temp; int i,j; U(3) /U int pivot = median3(a, left, right); /三者取中子程序 i = left; j = righi-1; for (; ) while (ij while (ij if(i j) temp = ai; aj; = ai; ai=temp; i+; j-; else break; if(aipivot
12、)U (4) /U;ai=pivot; quicksoft (U (5) /U); /递归排序左子区间 left = i+1; (分数:15.00)_五、B试题五/B(总题数:1,分数:15.00)2.【说明】本程序将两个从小到大的有序链表合成一个新的从小到大的有序链表。链表的每一项由类Node 描述,而链表由类 List 描述。类 List 的成员函数有以下几个。 createList():创建从小到大的有序链表。 multiplyList(List L1,List L2):将链表 L1 和链表 L2 合并。 print();打印链表。 # include iostream.h class
13、List; class Node friend class List; public: Node(int data) U (1) /U; private: int data; Node *next; ; class List public: List( ) list = NULL; void multiplyList(List L1, List L2); void createList( ); void print( ); private: Node *list; ; void List:createList( ) Node *p, *u, *pm; int data; list = NULL
14、; while (1) cout“输入链表的一项: (小于零,结束链表)“end1; cin data; if(data0)break; /小于零,结束输入 p = list; while (p != NULL p = p-next; u=U (2) /U: if(p=list) list = u; else pre-next = u; U(3) /U: void List:multiplyList (List L1, List L2) Node *pL1, *pL2, *pL, *u; list = NULL; pL1 = L1.list; pL2 = L2.1ist; while (pL1
15、 != NULL pL1 = pL1 -next; else u = new Node (pL2-data); pL2 = pL2-next; if (list=NULL) list=U (4) /U; else pL-next = u; pL =u; pL1 = (pL1 != NULL) ? pL1:pL2; while (pL1 != NULL) u =U (5) /U; pL1 = pL1-next; if (list=NULL) list=pL=u; else pL-next = u; pL = u; void List:print( ) Node *p; p = list; whi
16、le (p != NULL) cout p-data “/t“; p = p-next; cout end1; void main ( ) List L1, L2, L; cout “创建第一个链表/n“; L1.createList ( ); cout “创建第二个链表/n“; L2.createList ( ); L1.print ( ); L2.print ( ); L.multiplyList (L1, L2); L.print ( ); (分数:15.00)_六、B试题六/B(总题数:1,分数:15.00)3.【说明】本程序实现功能:读入两个整数,第 1 个数除以第 2 个数,声明当
17、除数为零时抛出异常类DivideByZeroException。 public class DivideByZeroExceptionU (1) /U public DivideByZeroException ( ) super(“Attcmpted to divide by zero“); import java.io. *; public class Example private static int quotient(int numerator, in)/”t denominator) throws DivideByZeroException if (denominator=0) th
18、rowU (2) /U; return(numerator / denominator); public static void main(String args) int number1=0, number2=0, result0; try System.out.print1n(“Enter the first number:“); number1 = Integer. valueOf(Keyboard.getString().intValue(); System.out.print1n(“Enter the second number:“); number2 = Integer. Va1u
19、eOf(Keyboard.getString().intValue(); result = quotient(number1,number2); catch (NumberFormatException e) System.out.print1n(“Invalid integer entered!“); System. exit(-1); catch (U (3) /U) System.out.print1n(e.to String(); System.exit(-1); Systcm.out.pfint1n(number1 + “/“ + number2 + “=“ + result); 其
20、中, Keyboard 类的声明为: import java.io.*; public class Keyboard static BufferedReader inputStream =U (4) /U (new InputStreamReader(System.in); public static int getInteger() try( return (Intoger.valueOf(inputStream.readLine().trim().intValue(); catch (Exception e) e.printStackTrace(); return 0; public st
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 中级 软件 设计师 下午 试题 59 答案 解析 DOC
