计算机类
公务员类
工程类
语言类
金融会计类
计算机类
医学类
研究生类
专业技术资格
职业技能资格
学历类
党建思政类
计算机软件水平考试
全国计算机应用水平考试(NIT)
计算机软件水平考试
计算机等级考试(NCRE)
全国高校计算机等级考试CCT
行业认证
信息素养
软件设计师(中级)
信息系统项目管理师(高级)
系统分析师(高级)
系统架构设计师(高级)
网络规划设计师(高级)
系统规划与管理师(高级)
软件评测师(中级)
软件设计师(中级)
网络工程师(中级)
多媒体应用设计师(中级)
嵌入式系统设计师(中级)
电子商务设计师(中级)
系统集成项目管理工程师(中级)
信息系统监理师(中级)
信息安全工程师(中级)
数据库系统工程师(中级)
信息系统管理工程师(中级)
软件过程能力评估师(中级)
计算机辅助设计师(中级)
计算机硬件工程师(中级)
信息技术支持工程师(中级)
程序员(初级)
网络管理员(初级)
信息处理技术员(初级)
电子商务技术员(初级)
信息系统运行管理员(初级)
网页制作员(初级)
多媒体应用制作技术员(初级)
PMP项目管理员资格认证
问答题【问题3】 若将上述各关系直接实现为对应的物理表,现需查询在2005年1月1日到2005年 12月31日期间,在该宾馆住宿次数大于5次的客人身份证号,并且按照入住次数进行降序排列。下面是实现该功能的SQL语句,请填补语句中的空缺。 SELECT 住宿.身份证号,count (入住日期) FROM 住宿,客人 WHERE 入住日期>='20050101'AND入住日期<='20051231' AND 住宿.身份证号=客人.身份证号 GROUP BY {{U}}(2) {{/U}} {{U}} (3) {{/U}} count(入住日期)>5 {{U}} (4) {{/U}}
进入题库练习
问答题【说明】某超市的销售业务由一个销售业务管理系统进行管理,该系统每完成一次交易都需要提供顾客发票,其格式如表1-1所示。对于这样一个销售业务管理系统,分别给出了以下两种关系数据库的设计(下划线表示主关键字)设计一:顾客Customer(顾客代码Cno,姓名name,住址address,联系电话phone)收银员Salesman(收银员代码Sno,身份证号idno,姓名flame,住址address,联系电话phone)商品Merchandise(商品代码Milo,商品名称Mname,价格price)发票Invoice(发票号码Ino,交易日期Idate,顾客代码Cno,收银员代码Sno,商品代码Mno,单价unitprice,数量amount)设计二:顾客Customer(顾客代码Cno,姓名name,住址address,联系电话phone)收银员Salesman(收银员代码Sno,身份证号idno,姓名name,住址address,联系电话吵one)商品Merchandise(商品代码Mno,商品名称mllame,价格pnce)发票Invoice(发票号码Ino,交易日期Idate,顾客代码Cno,收银员代码Sno)发票明细Invoicedetail(发票号码Ino,商品代码Uno,单价unitprice,数量amount)
进入题库练习
问答题[说明1]B树是一种多又平衡查找树。一棵m阶的B树,或为空树,或为满足下列特性的m叉树。(1)树中每个节点至多有m棵子树。(2)若根节点不是叶子节点,则它至少有两棵子树。(3)除根之外的所有非叶子节点至少有[m/2]棵子树。(4)所有的非叶子节点中包含下列数据信息:(n,A0,K1,A1,K2,A2,…,Kn,An)。其中,Ki(i=1,2,…,n)为关键字,且Ki<Ki+1(i=1,2,…,n-1),Ai(i=0,1,…,n)为指向树根节点的指针,且指针Ai-1所指子树中所有节点的关键字均小于ki,Ai+1所指子树中所有节点的关键字均大于ki;n为节点中关键字的数目。(5)所有的叶子节点都出现在同一层次上,并且不带信息(可以看作是外部节点或查找失败的节点,实际上这些节点不存在,指向这些节点的指针为空)。例如,一棵4阶B树如图1所示(节点中关键字的数目省略)。B树的阶M、bool类型、关键字类型及B树节点的定义如下:#defineM4/*B树的阶*/typedefenum{FALSE=0,TRUE=1}bool;typedefintElemKeyType;typedefStructBTreeNode{intnumkeys;/*节点中关键字的数目*/structBTreeNode*parent;/*指向父节点的指针,树根的父节点指针为空*/structBTreeNode*A[M];/*指向子树节点的指针数组*/ElemgeyTypeK[M];/*存储关键字的数组,K[0]闲置不用*/}BTreeNode;函数SearchBtree(BTreeNode*root,ElemKeyTypeakey,BTreeNode**ptr)的功能是:在给定的一棵M阶B树中查找关键字akey所在节点,若找到则返回TRUE,否则返回FALSE。其中,root是指向该M阶B树根节点的指针,参数ptr返回akey所在节点的指针,若akey不在该B树中,则ptr返回查找失败时空指针所在节点的指针。例如,在图1所示的4阶B树中查找关键字25时,ptr返回指向节点e的指针。注:在节点中查找关键字akey时采用二分法。函数SearchBtree的代码如下:boolSearchBtree(BTreeNode*root,ElemKeyTypeakey,BTreeNode**ptr){intlw,hi,mid;BTreeNode*P=root;*ptr=NULL;while(p){lw=1;hi=______;while(lw<=hi){mid=(lw+hi)/2;if(p→K[mid]==akey){*ptr=P;returnTRUE;}elseif______hi=mid-1;elselw=mid+1;}*ptr=p;p=______;}returnFALSE;}
进入题库练习
问答题【说明】 源程序中定义了Circle类与Money类,Circle类可对半径为r的圆进行周长与面积的计算,而Money类用于计算一圆形游泳池的造价。游泳池四周有原形过道,过道外围上栅栏,过道宽度为3米,根据键入的游泳池半径,每米栅栏价格及每平方米过道价格,即可计算出游泳池的造价。请按要求完成下列操作,将程序补充完整。 ①定义符号常量PI(值为3.14159f)与WIDTH(值为3.00f),分别用于表示圆周率与过道的固定宽度。 ②定义Circle类默认构造函数,把私有成员radius初始化为参数r的值。 ③完成Money类默认构造函数的定义,把私有成员FencePrice(每米栅栏的价格)、ConcretePrice(每平方米过道的价格)初始化为参数f,c的值。 ④完成Money类成员函数float Money::TotalMoney(float fencelen,float conarea)的定义,根据参数fencelen(栅栏的长度)和conarea(过道的面积),返回栅栏与过道的总造价。 注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。 源程序文件test4.cpp清单如下: #include<iostream.h> {{U}} (1) {{/U}} class Circle { private: float radius; public: {{U}} (2) {{/U}} float Circumference(){return 2 * P| * radius;} float Area(){return P|*radius * radius;} }; class Money { private: float FencePrice; float ConcretePrice; public: Money(float f,float c); float Tota|Money(float fencelen, float conarea); }; Money::Money(float f,float c) { {{U}}(3) {{/U}} } float Money::Tota|Money(float fencelen, float conarea) { {{U}}(4) {{/U}} } void main( ) { float radius, fence, concrete; cout. setf(ios:: fixed); cout. setf(ios:: showpoint); cout. precision (2); cout << "Enter the radius of the pool:"; cin > > radius; cout << "Enter the FencePrice:"; cin > > fence; cout << "Enter the ConcretePrice: "; cin > > concrete; Circle Pool(radius); Circle PoolRim(radius + WIDTH); Money mon( fence, concrete); float totalmoney = mon. TotalMoney( PoolRim. Circumference( ), ( PoolRim. Area ( ) - Pool. Area ( ) ) ); cout << "The total money is RMB" << totalmoney << end|; }
进入题库练习
问答题[问题3] 写出每种关系模式的主键。
进入题库练习
问答题试题五(共15分)阅读下列说明和C++代码,将应填入____(n)____处的字句写在答题纸的对应栏内。[说明]某实验室欲建立一个实验室环境监测系统,能够显示实验室的温度、湿度以及洁净度等环境数据。当获取到最新的环境测量数据时,显示的环境数据能够更新。现在采用观察者(Observer)模式来开发该系统。观察者模式的类图如图5-1所示。[C++代码]
进入题库练习
问答题[说明] 在一个简化的绘图程序中,支持的图形种类有点(point)和圆(circle),在设计过程中采用面向对象思想,认为所有的点和圆都是一种图形(shape),并定义了类型shape_t、point_t和circle_t分别表示基本图形、点和圆,并且点和圆具有基本图形的所有特征。 [C程序] typedef enum { point, circle } shape_type; /* 程序中的两种图形:点和圆 */ typedef struct { /* 基本的图形类型 */ shape type type; /* 图形种类标识:点或者圆 */ void (*destroy) (); /* 销毁图形操作的函数指针 */ void (*draw)(); /* 绘制图形操作的函数指针 */ } shape_t; typedef struct { shape_t common; int x; int y; } point_t; /* 定义点类型,x、y为点坐标 */ void destroyPoint (point_t* this) { free(this); printf ("Point destoryed!/n");) /* 销毁点对象 */ void drawPoint (point_t* this) { printf("P(%d, %d)", this→x, this→y);) /* 绘制点对象 */ shape_t* createPoint(va_list* ap) /* 创建点对象,并设置其属性 */ { point_t* p point; if ((p_point=(point_t*) malloc (sizeof(point_t)))==NULL) return NULL; p_point→common. type = point; p_point→common. destroy = destroyPoint; p_point→common. draw=drawPoint; p_point→x = va_arg (*ap, int); /* 设置点的横坐标 */ p_point→y = va_arg(*ap, int); /* 设置点的纵坐标 */ return (shape_t*)p_point; /* 返回点对象指针 */ } tyPedef struct /* 定义圆类型 */ { shape_t common; point_t *center; /* 圆心点 */ int radius; /* 圆半径 */ } circle_t; void destroyCircle(circle_t* this) { free (______); free(this); printf("Circle destoryed!/n"); } void drawCircle (circle_t* this) { printf ("C("); ______.draw( this→center); /* 绘制圆心*/ printf (", %d)", this→radius); } shape_t* createCircle(va list* ap) /* 创建一个圆,并设置其属性 */ { circle_t* p_circle; if ((p_circle=(circle_t*)malloc(sizeof(circle_t)))==NULL)return NULL; p_circle→common. type=circle; p_circle→common. destroy=destroyCircle; p_circle→common. draw=drawCircle; ______ =createPoint(ap); /* 设置圆心 */ p_circle→radius=va arg(*ap, int); /* 设置圆半径 */ return p_circle; } shape t* createShape(shape_type st, …) /* 创建某一种具体的图形 */ { va_list ap; /* 可变参数列表 */ shape_t* P_shape = NULL; ______ (ap, st); if ( st == point) p_shape=createPoint( &ap); /* 创建点对象 */ if ( st == circle) p_shape=createCircle(&ap); /* 创建圆对象 */ va_end(ap); return p-shape; } int main() { int i; /* 循环控制变量,用于循环计数 */ shape t* shapes[2]; /* 图形指针数组,存储图形的地址 */ shape_s[0] = createShape ( point, 2, 3); /* 横坐标为2,纵坐标为3 */ shapes[1] = createShape( circle, 20, 40, 10); /* 圆心坐标(20, 40), 半径为10 */ for (i=0; i<2; i++) { shapes[i]→draw(shapes[i]); printf("/n"); } /* 绘制数组中图形 */ for( i=1; i>=0; i--) shapes[i]→destroy(shapes[i]); /* 销毁数组中图形 */ return 0; } 运行结果如下: p(2, 3) ______ Circle destoryed! Point destoryed!
进入题库练习
问答题问题:4.3 若输入的硬币数为30,则最少的比较次数为( ),最多的比较次数为( )。
进入题库练习
问答题【说明】某绘图系统存在point、line、square三种图元,它们具有Shape接口,图元的类图关系如图13-12所示。现要将circle图元加入此绘图系统以实现功能扩充。已知某第三方库已经提供了XCircle类,且完全满足系统新增的Circle图元所需的功能,但XCircle不是由Shape派生而来的,它提供的接口不能被系统直接使用。代码13-2既使用了XCircle又遵循了Shape规定的接口,既避免了从头开发一个新的Circle类,又可以不修改绘图系统中已经定义的接口。代码13-3根据用户指定的参数生成特定的图元实例,并对之进行显示操作。绘图系统定义的接口与XCircle提供的显示接口及其功能如表13-5所示。{{B}}表13-5接口及其功能{{/B}}ShapeXCircle功能display()DisplayIt()显示图元【代码13-2】classCircle{{U}}(1){{/U}}{private{{U}}(2){{/U}}pxc;publicCircle(){pxc=new{{U}}(3){{/U}};}publicvoiddisplay(){pxc.{{U}}(4){{/U}};}}【代码13-3】publicclassFactory{public{{U}}(5){{/U}}getShapeInstance(inttyoe){//生成特定类实例switch(type){case0:returnnewpoint();case1:returnnewRectangle();case2:returnnewline();case3:returnnewCircle();default:returnnull}}};publicclassApp{publicstaticviodmain(Stringargv[){if(argv.length!=1){system.out.println("errorparameters!");Return;}inttype=(newInteger(argv[0)).intValue();Factoryfactory=newFactory();shapes;s=factory.{{U}}(6){{/U}};if(s==null){system.out.println("Errorgetinstance!");Return;}s.display();return;}}
进入题库练习
问答题[说明]某订单管理系统的部分UML类图如图5-16所示。在图5-16中,Product表示产品,ProductList表示所销售产品的列表,Order表示产品订单,Orderltem表示产品订单中的一个条目,OrderList表示订单列表,SalesSystem提供订单管理系统的操作接口。各个类的部分属性和方法说明如表5-23所示。{{B}}表5-23某订单管理系统各个类的部分属性和方法说明表{{/B}}{{B}}类{{/B}}{{B}}成员{{/B}}{{B}}说明{{/B}}ProductListArrayList<Product>productsProductStringcode产品编号Stringdescription产品描述doubleprice产品单价Booleanequals(Objectobject)若两个产品相同则返回true,否则返回falseOrderItemProductproduct订单项中的产品intquantity产品的订购数量ProductgetProduct()获取订单项中的产品OrderArrayList(orderItem)items订单中包含的订单项orderListArrayList(Order)Orders订单voidaddorder(orderOrder)向订单列表中添加新订单intgetNumberOfOrders()获取订单列表中的订单总数SalesSystemProductListcatalog产品目录orderListsales订单列表voidstatistic()依次统计产品目录中每个产品的订购总量,并打印出每个产品的编号、说明、订购总量和订购金额可以使用类java.util.ArrayList<E>来实现对象的聚集关系,如图5-16中OrderList与Order之间的聚集关系。for-each循环提供了一种遍历对象集合的简单方法。在for-each循环中,可以指定需要遍历的对象集合及用来接收集合中每个元素的变量,其语法如下:for(用来接收集合中元素的变量:需要遍历的对象集合)如果要使用for-each循环来遍历对象集合,那么包含该对象集合的类必须实现接口java.util.Iterable<T>。Java程序7-1和Java程序7-2分别给出了类OrderList和方法statistic的Java代码。
进入题库练习
问答题 对文法G[S]:S→a|∧|(T);T→T,S|S:回答问题1~问题3。 【表】 表4-2 预测分析表 a ∧ ( ) , # S →a →∧ (u)(2)(/u) T (u)(1)(/u) →SN →SN N (u)(3)(/u) →,SN
进入题库练习
问答题阅读下列说明和图,回答问题1至问题3。【说明】公司IT部门决定开发一个计算机管理系统以记录期刊的传阅情况。期刊在公司内部传阅,员工可以要求加入传阅队列。图书室登记公司收到的期刊,交给名单中的第一名员工。员工应在3个工作日内完成阅读,员工阅读完毕后通知系统,系统提醒下一位阅读者取书,下一个员工必须确认已收到期刊。当传阅名单中“下一位”员工出差在外时将无法进行传阅,此时将期刊传给再下一位,而将该员工做标记,再次传递此书时优先考虑该员工。最后一位员工阅读完毕后,将期刊交还图书室以便共用。系统能在员工忘记传递期刊时发出提醒信息。系统详细记录期刊传阅情况,当员工阅读完后通知系统,系统记录该员工的员工号及日期,并在备注栏注明是传出;同样,当员工收到期刊后给系统收书确认,系统记录该员工的员工号及日期,并在备注栏注明是收到。公司的员工都有一个唯一的员工号。公司订阅了多种期刊,为每一本期刊(有唯一期刊流水号)产生一份传阅名单,并详细记录传阅情况。员工的出差情况存储在系统主机中。该系统采用面向对象方法开发,系统中的类及类之间的关系用UML类图表示,图9-4是该系统的类图的一部分,图9-5描述了成功传递期刊的序列图。
进入题库练习
问答题[说明]某学校的教学系统描述如下:学生信息包括:学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)、入学年份(Syear)、主修专业(Smajor),其中学号是入学时唯一编定的。教师信息包括:教工号(Tno)、姓名(Tname)、性别(Tsex)、年龄(Tage)、职称(Title),其中教工号是唯一编定的。课程信息包括:课程号(Cno)、课程名称(Cname)、学时(Cpeiiod)、学分(Ccredit),其中课程号是唯一编定的。每个专业每个年级只有一个班级,这样班级就可用入学年份标识。每位教师只教授特定的一门的课程,每门课程可以有多个教师教授,各位老师的上课地点及上课时间有所不同。注意:一门课程至少有一位教师教授,否则这门课程就视为不存在。每位学生可以同时选修多门不同的课程,一门课程至少要有10位学生选修,否则就取消这门课程的开设。注意:选修课程时要指定任课教师,不能重复选修同一门课程。课程结束后,任课教师给选修该课程的学生一个成绩(Grade)。注意:教师不能给没有选修他所教授课程的学生成绩,即使选修了其他教师教授的同一门课也不行。图2-1是经分析得到的E-R图。[图2-1]
进入题库练习
问答题[说明] 为网球比赛的选手安排比赛日程。设有n(n=2m)位选手参加网球循环赛,循环赛共进行n-1天,每位选手要与其他n-1位选手赛一场,且每位选于每天赛一场,不轮空。 设n位选手被顺序编号为1, 2, …, n,比赛的日程表是一个n行n-1列的表,第i行j列的内容是第i号选手第j天的比赛对手。用分治法设计日程表,就是从其中一半选手(2m-1位)的比赛日程导出全体2m选手的比赛日程。从众所周知的只有两位选手的比赛日程出发,反复这个过程,直至为n位选手安排好比赛日程为止。 如两位选手比赛日程表如下所示: 1 1 2 2 1 如四位选手比赛日程表如下所示: 1 2 3 1 2 3 4 2 1 4 3 3 4 1 2 4 3 2 1 函数中使用的预定义符号如下: #define M 64 int a[M+1][M]; [函数] void main() int twom1, twom, i, j, m, k; printf("指定n(=2的k次幂)位选手, 请输入k: /n"); scanf("*d", /*预设两位选手的比赛日程*/ a[l] [1] = 2; a[2] [1] = 1; m = 1; twoml = 1; while(______) m++; twoml += twoml; twom = twoml * 2;/*为2^m位选手安排比赛日程*/ /*填日程表的左下角*/ for(i = twoml + i; ______; i++) for(j = i; j <= twoml - i; j++) a[i] [j] = a[i - twoml] [j] + twoml; /*填日程表的右上角*/ a[1] [twoml] = ______;/*填日程表右上角的第1列*/ for(i = 2; i <= twoml; i++) a[i] [twoml] = a[i - 1] [twoml] + i; /*填日程表右上角的其他列,参照前一列填当前列+/ for(j = twoml + 1; j < twom; j++) for(i = i; i < twoml; i++) a[i] [j] = ______; a[twoml] [j] = a[l] [j - 1]; /*填日程表的右下角*/ for(j = twoml; j < twom; j++) for(i = i; i <= twoml; i++) a[______] [j] = i; /*输出日程表*/ for(i = i; i <= twom; i++) for(j = i; j < twom; j++) printf("%4d", a[i] [j]); printf("/n"); printf("/n");
进入题库练习
问答题[说明]已知某唱片播放器不仅可以播放唱片,而且可以连接计算机并把计算机中的歌曲刻录到唱片上(同步歌曲)。连接计算机的过程中还可自动完成充电。关于唱片,还有以下描述信息。(1)每首歌曲的描述信息包括歌曲的名字、谱写这首歌曲的艺术家及演奏这首歌曲的艺术家。只有两首歌曲的这3部分信息完全相同时,才认为它们是同一首歌曲。艺术家可能是一名歌手或一支由2名或2名以上的歌手所组成的乐队。一名歌手可以不属于任何乐队,也可以属于一个或多个乐队。(2)每张唱片由多条音轨构成。一条音轨中只包含一首歌曲或为空,一首歌曲可分布在多条音轨上;同一首歌曲在一张唱片中最多只能出现一次。(3)每条音轨都有一个开始位置和持续时间。每张唱片上的音轨次序是非常重要的,因此对于任意一条音轨,播放器需要准确地知道它的下一条音轨和上一条音轨是什么(如果存在的话)。根据上述描述,采用面向对象方法对其进行分析与设计,得到了如下表所示的类列表、如图1所示的初始类图以及如图2所示的描述播放器行为的UML状态图。类列表类名说明Artist艺术家Song歌曲Band乐队Musician歌手Track音轨Album唱片
进入题库练习
问答题【说明】某单位正在使用一套C/S模式的应用软件系统,现在需要升级为B/S应用模式,但需要保持业务的连续性。开发人员提出用WebService作为中间层的接口进行开发。【问题1】请用120字以内文字,从业务的继承性、升级成本(时间、工作量)和扩展性三个方面简要说明开发人员所提方案的优点。【问题2】WebService的三个基本技术是WSDL、SOAP、UDDI,它们都是以XML为基础定义的。请用120字以内文字,简要说明WSDL、SOAP和UDDI的作用。【问题3】服务注册中心、服务提供者和服务请求者之间的交互和操作构成了WebService的体系结构,如图13-21所示。请用180字以内文字,说明这三者的主要功能及其交互过程。
进入题库练习
问答题[说明]某高等院校的教学管理具有选课管理和成绩管理两大功能。选课管理主要完成以下工作:(1)录入与生成新学期课程表;(2)学生选课注册;(3)查询,学生、教师、教学管理员可以查询课程表,获得课程信息、学生选课信息和学生、教师信息;(4)选课注册信息的统计与报表生成。成绩管理主要的功能为:(1)成绩录入:教学管理员录入学生考试成绩;(2)成绩查询:教师、教学管理员可以查询学生考试成绩。。学生只允许查询自己的考试成绩,不允许查询他人的成绩;(3)成绩统计与报表生成:教学管理员进行成绩统计,打印统计报表。把学生选课注册信息传送给财务系统,以便计算学生应交纳的费用。根据需要,系统设计的用例有“选课管理”、“成绩管理”、“查询课程信息”、“选课注册”、“管理开设课程”等用例。其中部分用例说明如下:“查询课程信息”:学生、教师或教学管理员启动查询课程信息时,该用例开始运行。根据输入的查询要求(查询主题或关键字),显示有关的课程信息;“选课注册”。当学生登录进行选课注册时,该用例开始运行,它提供了选择课程、注册、修改注册、删除注册等功能。学生登录需要用户标识(ID)和口令;“管理开设课程”。当教学管理员登录系统进行产生选课信息操作时,该用例开始运行。它首先检查用户标识(ID)和口令,然后从数据库中取出学生的选课注册数据,按照要求进行分类统计,生成选课注册报表。活动者“学生”与用例“选课注册”的交互关系如下:当“学生”登录系统进入选课注册活动时,首先要输入用户标识(ID)和口令,经系统的“注册表单”接口对象验证,如果正确无误,则“学生”可以进行查询活动或选课活动,否则拒绝进入。若“学生”发出“查询”请求,系统的“选课注册表单”接口对象响应信息给“学生”,及发送增加或删除学生选课数据的消息。“开设课程”对象响应该消息,找出数据库中的相关数据,增加或删除学生的姓名和所选的课程名,或做相应的修改,并把增加或删除学生课操作成功或失败的信息反馈给“选课注册表单”接口对象,“选课注册表单”接口对象再反馈给“学生”。如果“学生”按下“确认”键,则选课操作得到确认,发出提交请求。“选课注册表单”接口对象响应该请求,并发出“存储”消息。“开设课程”对象响应“存储”消息,进行数据库存储操作,选课数据存入数据库。若“学生”结束选课,发出“退出”系统请求,“注册表单”接口对象响应请求,关闭系统。图10-7为系统的顶层UML用例图。图10-8为选课注册顺序图。
进入题库练习
问答题[说明]用创建Thread类的子类的方法实现多线程,判断一个数是否是素数。如果是,打印“是素数”,如果不是,则打印“不是素数”,如果没有参数输入,显示“请输入一个命令行参数”。[Java程序]
进入题库练习
问答题某宾馆拟开发一个宾馆客房预订子系统,主要是针对客房的预订和入住等情况进行管理。[需求分析结果](1)员工信息主要包括员工号、姓名、出生年月、性别、部门、岗位、住址、联系电话和密码等信息。岗位有管理和服务两种。岗位为“管理”的员工可以更改(添加、删除和修改员工表中的本部门员工的岗位和密码,要求将每一次更改前的信息保留;岗位为“服务”的员工只能修改员工表中本人的密码,且负责多个客房的清理等工作。(2)部门信息主要包括部门号、部门名称、部门负责人、电话等信息;一个员工只能属于一个部门,一个部门只有一位负责人。(3)客房信息包括客房号、类型、价格、状态等信息。其中类型是指单人间、三人间、普通标准间、豪华标准间等;状态是指空闲、入住和维修。{{U}}1{{/U}}客户信息包括身份证号、姓名、性别、单位和联系电话。{{U}}2{{/U}}客房预订情况包括客房号、预订日期、预订入住日期、预订入住天数、身份证号等信息。一条预订信息必须且仅对应一位客户,但一位客户可以有多条预订信息。[概念模型设计]根据需求阶段收集的信息,设计的实体联系图(不完整)如图所示。[逻辑结构设计]逻辑结构设计阶段设计的部分关系模式(不完整)如下。员工({{U}}{{U}}1{{/U}}{{/U}},姓名,出生年月,性别,岗位,住址,联系电话,密码)权限(岗位,操作权限)部门(部门号,部门名称,部门负责人,电话)客房({{U}}{{U}}2{{/U}}{{/U}},类型,价格,状态,入住日期,入住时间,员工号)客户({{U}}{{U}}3{{/U}}{{/U}},姓名,性别,单位,联系电话)更改权限(员工号,{{U}}{{U}}4{{/U}}{{/U}},密码,更改日期,更改时间,管理员号)预订情况({{U}}{{U}}5{{/U}}{{/U}},预订日期,预订入往日期,预订入住天数)
进入题库练习
问答题已知某类库开发商提供了一套类库,类库中定义了Application类和Document类,它们之间的关系如图所示。其中,Application类表示应用程序自身,而Document类则表示应用程序打开的文档。Application类负责打开一个已有的以外部形式存储的文档,如一个文件,一旦从该文件中读出信息后,它就由一个Document对象表示了。当开发一个具体的应用程序时,开发者需要分别创建自己的Application和Document子类。例如,图中的类MyApplication和类MyDocument,并分别实现Application和Document类中的某些方法。已知Application类中的openDocument方法采用了模板方法(TemplateMethod)设计模式,该方法定义了打开文档的每一个主要步骤如下:{{U}}{{/U}}首先检查文档是否能够被打开,若不能打开,则给出出错信息并返回。{{U}}{{/U}}创建文档对象。{{U}}{{/U}}通过文档对象打开文档。{{U}}{{/U}}通过文档对象读取文档信息。{{U}}{{/U}}将文档对象加入到Application的文档对象集合中。[Java代码]abstractclassDocument{publicvoidsave(){/*存储文档数据,此处代码省略*/}publicvoidopen(StringdocName){/*打开文档,此处代码省略*/publicvoidclose(){/*关闭文档,此处代码省略*/}publicabstractvoidread(StringdocName);};abstractclassAppplication{privateVector<{{U}}{{U}}{{/U}}{{/U}}>docs;/*文档对象集合*/publicbooleancanOpenDocument(StringdocName){/*判断是否可以打开指定文档,返回真值时表示可以打开,返回假值表示不可打开,此处代码省略*/}publicvoidaddDocument(DocumentaDocument){/*将文档对象添加到文档对象集合中*/docs.add({{U}}{{U}}{{/U}}{{/U}});}publicabstractDocumentdoCreateDocument();/*创建一个文档对象*/publicvoidopenDocument(StringdocName){/*打开文档*/if({{U}}{{U}}{{/U}}{{/U}}){System.out.println("文档无法打开!");return;}{{U}}{{U}}{{/U}}{{/U}}adoc={{U}}{{U}}{{/U}}{{/U}};{{U}}{{U}}{{/U}}{{/U}};{{U}}{{U}}{{/U}}{{/U}};{{U}}{{U}}{{/U}}{{/U}};}};
进入题库练习