阅读以下说明和C++代码,填入(n)处。
[说明]
以下C++代码使用虚函数实现了同一基类shape派生出来的Class rectangle、Class triangle、Class circle实现了计算矩形、圆形面积的计算。仔细阅读以下代码,将(n)处语句补充完整。
[代码5-1]
#include<iostream.h>
#define PI 3.14159
class shape {//基类
protected:
(1);
public:
(2);
(3);
};
[代码5-2]
class rectangle: public shape {
public:
rectangle (int x2,int y2,int r2): (4) {};
double area ( ) {return x*y; };
};
class circle: public shape {
public:
circle (int x3,int y3,int r3):(5){};
double area ( ) {return r*r*PI; };
};
[代码5-3]
void main ( )
{
rectangle r (10,20,0);
circle c (0,0,30);
shape (6);
cout<<"长方形面积="<<s1->area ( ) <<endl;
cout<<"圆形面积="<<s2->area ( ) <<endl;
}
[运行结果]
长方形面积=200
圆形面积=2827.43
阅读以下说明和Visual Basic代码,填入(n)处。
[说明]
以下Visual Basic代码实现了系统登录时对用户进行合法性检查。界面如图9-6所示。阅读下面代码,将(n)处代码补充完整。
[代码7-1]
Begin VB.Form. form1
BackColor = &H00808080&
Caption = "系统登录"
//...窗体描述(略)
Begin VB.Labe1 Labe12
Backstyle = 0 'Transparent
Caption = "密 码: "
//…窗体描述(略)
End
Begin VB.Labe1 Labe11
Backstyle = 0 'Transparent
Caption = "操作员: "
//...窗体描述(略)
End
//...窗体描述(略)
End
[代码7-2]
Dim TIM As Integer
Dim mydb As Database
Dim myrs As Recordset
Dim sq1 As String
Private Sub Form. ACdvate ( )
Set mydb=Workspaces (0).OpenDatabase (App.Path&"\CIUID.mdb") '打开数据库
sq1="select操作员from qxsz"
Set myrs=mydb.OpenRecordset (sq1)
If (1) Then myrs.MoveLast
If (2) Then myrs.MoveFirst
For i=0 TO myrs.RecordCount-1
(3)
(4)
Next i
If (5) Then master.Listlndex=0
myrs.Close
mydb.Close
master.SetFocus
End Sub
[代码7-3]
Private Sub Cmdok_Click ( ) '确认操作员和密码
Dim MESSAGE As String
If master.Text<>'''Then
Set mydb=Workspaces (0) .OpenDatabase (App.Path&"\CIUID.mdb")
Set myrs=mydb.OpenRecordset ("qxsz", dbOpenDynaset)
myrs.Findfirst"操作员="+Chr(34) +master.Text+Chr(34) +"" '查找操作员
If (6) Then
MsgBox ("无此操作员!")
Else
If password.Text=myrs.Fields("密码") Then '确认密码
MsgBox"系统登录成功!" '系统登录成功
Else
If TIM=3 Then
MESSAGE=MsgBox ("密码输入错误,请向系统管理员查询!",0,"")
If MESSAGE=vbOK Then End
End If
MsgBox ("密码错误,请重新输入密码!")
TIM=TIM+1 '密码输入错误次数
password.SetFocus
End If
End If
End If
End Sub
阅读以下说明和C++代码,填入(n)处。
[说明]
以下C++代码使用虚函数实现了同一基类shape派生出来的Class rectangle、Class triangle、Class circle实现了计算矩形、圆形面积的计算。仔细阅读以下代码,将(n)处语句补充完整。
[代码5-1]
#include<iostream.h>
#define PI 3.14159
class shape {//基类
protected:
(1);
public:
(2);
(3);
};
[代码5-2]
class rectangle: public shape {
public:
rectangle (int x2,int y2,int r2): (4) {};
double area ( ) {return x*y; };
};
class circle: public shape {
public:
circle (int x3,int y3,int r3):(5){};
double area ( ) {return r*r*PI; };
};
[代码5-3]
void main ( )
{
rectangle r (10,20,0);
circle c (0,0,30);
shape (6);
cout<<"长方形面积="<<s1->area ( ) <<endl;
cout<<"圆形面积="<<s2->area ( ) <<endl;
}
[运行结果]
长方形面积=200
圆形面积=2827.43
阅读以下说明和JAVA 2代码,填入(n)处的。
[说明]
以下JAVA程序实现了在接口interface iShape2D的定义和应用,仔细阅读代码和相关注释,将程序补充完整。
[代码6-1]
interface iShape2D //定义接口
{
(1)
(2)
}
(3)//实现CRectangle类
{
int width, height;
(4) CRectangle (int w,int h) {
width=w;
height=h;
}
public void area ( ){ //定义area( )的处理方式
System. out.println ("area="+width*height);
}
}
(5)//实现CCircle类
{
double radius;
(6) CCircle (double r) {
radius=r;
}
public void area ( ) { //定义area( )的处理方式
System.out.println ("area="+pi*radius*radius);
}
}
[代码6-2]
public class app10_4
{
public static void main(String args[])
{
CRectangle rect=new CRectangle (5,10);
rect.area ( ); //调用CRectangle类里的area ( ) method
CCircle cir=new CCircle (2.0);
cir.area ( ); //调用CCircl类里的area ( ) method
}
}
UML设计中交互图通常可以分为哪两类图?绘制交互图对系统的设计有什么作用?
阅读下列函数说明和C代码,应填入(n)处。
[说明]
假设设A和B均为顺序表,A'和B'分别为A和B中除去最大共同前缀后的子表(例如,A=(x,y,y,z,x,z),B=(x,y,y,z,y,x,x,z),则两者中最大的共同前缀为(x,y,y,z),在两表中除去最大共同前缀后的子表分别为A'=(x,z)和B'=(y,x,x,z)。若A'=B'=空表,则A=B;若A'=空表,而 B'!=空表,或者两者均不为空表,且A'的首先小于B'的首元,则A<B;否则A>B。
下面程序实现了比较A、B大小的算法。
[C程序]
#include<stdio.h>
#include<stdlib.h>
typedef struct linknode
{
int data;
struct linknode *next;
}node:
node *creatlist ( ) /*建立单链表*/
{
node*head, *r, *s;
int x;
head= (node *) malloc (sizeof (node)); /建立单链表的头结点head*/
r=head;
printf ("输入系列整数,以O标志结束\n");
scanf ("%d", &x);
while (x!=O) /*x==O则退出while循环*/
{
s=(node*) malloc (sizeof (node));
s->data=x;
r->next=s;
s->next=NULL;
r=s;
scanf ("%d", &x);
}
r->next=NULL;
s=head;
(1);
Free (s);
return head;
}
void subs ( )
{
node*p, *p1, *p2, *q, *heada, *headb;
heada=creatlist ( ) ;
headb=creatlist ( ) ;
p=heada;
p1=p; /*p1指向p所指结点的前一个结点,开始时均缀向头结点*/
while (p!=NULL )
{
q=headb;
while (q!=NULL&&q->data!=p->data)
q=q->next;
if ((2)) {
if (p==heada)
{
(3);
p1=heada;
}
else if (p->next==NULL) p1->next=NULL; /*该结点为最后一结点,删除*/
else p1->next=p->next;
p2=p->next;
(4);
free (p);
(5);
}
else /*p所指结点的元素不在B中,则直接下移p*/
{
p1=p;
(6);
}
}
p=heada; /*显示删除后的结果*/
if (p==NULL)
printf ("两集合机减的结果为空\n");
else
printf ("两集合相减的结果\n");
while (p!=NULL)
{
printf ("%d", p->data);
p=p->next;
}
}
void main ( )
{
subs ( ) ;
}
图10-8为选课注册顺序图,请根据系统设计说明及图中信息,采用说明中的术语将选课注册顺序图补充完整。
阅读下列说明以及图10-7和图10-8,回答问题1、问题2和问题3。
[说明]
某高等院校的教学管理具有选课管理和成绩管理两大功能。选课管理主要完成以下工作:(1)录入与生成新学期课程表;(2)学生选课注册;(3)查询,学生、教师、教学管理员可以查询课程表,获得课程信息、学生选课信息和学生、教师信息;(4)选课注册信息的统计与报表生成。成绩管理主要的功能为: (1)成绩录入:教学管理员录入学生考试成绩;(2)成绩查询:教师、教学管理员可以查询学生考试成绩。。学生只允许查询自己的考试成绩,不允许查询他人的成绩;(3)成绩统计与报表生成:教学管理员进行成绩统计,打印统计报表。把学生选课注册信息传送给财务系统,以便计算学生应交纳的费用。
根据需要,系统设计的用例有“选课管理”、“成绩管理”、“查询课程信息”、“选课注册”、“管理开设课程”等用例。其中部分用例说明如下:
“查询课程信息”:学生、教师或教学管理员启动查询课程信息时,该用例开始运行。根据输入的查询要求(查询主题或关键字),显示有关的课程信息;
“选课注册”。当学生登录进行选课注册时,该用例开始运行,它提供了选择课程、注册、修改注册、删除注册等功能。学生登录需要用户标识(ID)和口令;
“管理开设课程”。 当教学管理员登录系统进行产生选课信息操作时, 该用例开始运行。 它首先检查用户标识(ID)和口令,然后从数据库中取出学生的选课注册数据,按照要求进行分类统计,生成选课注册报表。
活动者“学生”与用例“选课注册”的交互关系如下:当“学生”登录系统进入选课注册活动时,首先要输入用户标识(ID)和口令,经系统的“注册表单”接口对象验证,如果正确无误,则“学生”可以进行查询活动或选课活动,否则拒绝进入。若“学生”发出“查询”请求,系统的“选课注册表单”接口对象响应信息给“学生”,及发送增加或删除学生选课数据的消息。 “开设课程”对象响应该消息,找出数据库中的相关数据,增加或删除学生的姓名和所选的课程名,或做相应的修改,并把增加或删除学生课操作成功或失败的信息反馈给“选课注册表单”接口对象,“选课注册表单”接口对象再反馈给“学生”。如果“学生”按下“确认”键,则选课操作得到确认,发出提交请求。“选课注册表单”接口对象响应该请求,并发出“存储”消息。“开设课程”对象响应“存储”消息,进行数据库存储操作,选课数据存入数据库。若“学生”结束选课,发出“退出”系统请求,“注册表单”接口对象响应请求,关闭系统。
图10-7为系统的顶层UML用例图。图10-8为选课注册顺序图。
用例图解释了活动者与用例之间的交互关系。根据系统设计说明,将系统的顶层用例图补充完整。
数据依赖对关系模式有哪些影响?请简述这些影响。
阅读以下说明和图,回答问题1至问题3。
[说明]
图书馆藏书管理系统,完成用户信息管理,借阅归还信息管理,馆藏书目的信息管理,违规处罚管理
和各种查询等功能。系统的用户可分为超级用户和普通用户两类,超级用户负责系统维护,包括对藏书信息,用户信息,借阅和归还信息,违规处罚信息的录入,修改,查询,删除等。普通用户即借阅者则只是具有查询书目信息,查询本人的借阅情况,违规处罚信息和预定书目的权限。
用户通过身份验证后进入主界面。主界面为超级用户提供6项选择:图书信息管理,用户信息管理,图书的借阅和归还信息管理,违规处罚信息管理,口令修改。普通用户有4项功能选择:书目查询,借阅归还信息,违规处罚信息,口令修改。
图书信息管理:超级用户可以增加,修改,删除图书信息,也可以查看书目信息。
用户信息管理:超级用户可以增加,修改,删除用户信息,也可以查找用户信息。
借阅归还信息:超级用户可以加入,修改,删除借阅纪录,查看某本书的借阅情况,查询指定的书目借阅和归还信息。
违规处罚管理:超级用户可以给普通用户增加,修改,删除违规处罚信息,普通用户如果逾期不还图书,系统将暂时终止普通用户的借阅权利,直到用户接受违规处罚后,方可以恢复正常的借阅权利。
口令修改:用户需要输入原口令,并且两次输入新口令一致后,系统即用新口令代替旧口令。
图书馆藏书借阅系统信息流如图10-5所示,图书馆藏书管理系统的E-R模型图如图10-6所示。
请写出图书馆藏书管理系统的E-R模型图,该系统涉及的实体集及属性。
根据E-R图中给出的词汇,按照“关系模式名(属性,属性,…)”的格式,将此E-R图转换为7个关系模式,其中模式名根据需要取实体名或联系名。
高级经济师考试试题精选练习(1)
高级经济师考试模拟练习题之单选题(1
高级经济师考试试题精选练习(2)
高级经济师考试试题精选练习(3)
高级经济师考试试题:经济法案例试题精
高级经济师考试模拟试题及答案
高级经济师考试试题及答案:单选练习题
高级经济师考试试题:经济法案例试题精
高级经济师考试模拟题及答案练习(1)
高级经济师考试模拟题及答案练习(2)