作业面向对象

作业面向对象
作业面向对象

一、选择题

1. 在Java程序中定义一个类,类中有一个没有访问权限修饰的方法,则此方法____C____

A.类外的任何方法都能访问它

B.类外的任何方法都不能访问它

C.类的子类和同包类能访问它

D.只有类和同包类才能访问它

2. 下面的程序输出的结果是____D____

1. class A {

2. public byte getNumber () {

3. return 1;

4. }

5. }

6.

7. class B extends A {

8. public short getNumber() {

9. return 2;

10. }

11.

12. public static void main (String[] args) {

13. B b = new B ();

14. System.out.printIn(b.getNumber())

15.}

16. }

A. 1

B. 2

C. 8行编译错误

D. 14行编译错误

3. 下列关于继承的说法,正确的是___D________

A. 子类只继承父类的public方法和属性

B. 子类只继承父类的非私有的方法和属性

C. 子类只继承父类的方法,不继承父类的属性

D. 子类继承父类的所有的方法和属性

4. 下面哪个方法是重写______C____

class BaseClass{

private float f = 1.0f;

protected void setVar(float f){

x=f;

}

}

class SubClass extends BaseClass{

private float f=2.0;

//insert code here

}

A.void setVar(float f) {x = f;}

B. public void setVar(int f) {x = f;}

C. public void setVar(float f) {x = f;}

D. public double setVar(float f) {x = f;}

5. 下面程序的输出结果是___D_____

class A{

public byte getNumber(){

return 1;

}

}

class B extends A{

public short getNumber(){

return 2;

}

public static void main(String args[]){

B b = new B();

System.out.println(b.getNumber());

}

}

A.0

B. 1

C.2

D. 编译错误

二、填空题

1. 在java语言中,继承的关键字是___________。一个类允许继承其他_______个类。

2. 变量和方法的访问修饰符有____________________________________。

3. 所以类的父类是_____________。

三、简答题

1.方法重载和重写的异同点是什么?

2. ==和equals的区别是什么?

3.java程序在什么情况下调用toString方法?

4. 简述面向对象的特性?

5. int和Integer的区别?

6. 访问修饰符的作用域是什么?

7. 深复制和浅复制分别是什么?

8. java中是否有引用传递?为什么?

四、编程题

1. 某公司的雇员分为以下若干类,请看类图

Employee:这是所有员工总的父类,如果该月员工过生日,则公司会额外奖励100元。SalariedEmployee:拿固定工资的员工

HourlyEmployee:按小时拿工资的员工,每月工作超出160小时的部分按照1.5倍工资发放SalesEmployee:销售人员,工资由月销售额和提成率决定

BasePlusSalesEmployee:有固定底薪的销售人员,工资由底薪加上销售提成部分

创建五个员工,分别是普通员工,拿固定工资的员工,按小时拿工资的员工,销售人员和有底薪的销售人员,存在数组中,如果本月为三月份,输出该公司的工资表。

2. 英雄战斗的游戏,请根据如下类图编写代码

生命类Life,提供初始化姓名和生命值的构造方法,提供战斗方法fight,将其生命值减1,并打印出"Life 战斗...",提供打印方法printInfo,打印出当前对象的姓名和生命值。

英雄类(Hero),提供带姓名、等级参数构造的构造方法,初始化姓名和生命值(英雄的生命值=等级*100),提供战斗的方法,将妖怪的生命值减2,并打印出传入绝世好剑,妖怪生命减5,传入倚天剑,妖怪生命减8,传入金箍棒,妖怪生命减10,并打印"Hero 用XXX战斗...". 妖怪类(Monster),提供构造函数初始化姓名和生命值,将生命值初始化为500,愤怒一次,愤怒值加1,每次战斗英雄减少的生命值(愤怒值*2),并打印"Monster 妖怪反击"

3. 请根据如下类图编写代码

Animal类,eat方法,打印XXX正在吃东西,提供play方法打印XXX自己玩耍

Cat类,paly方法,打印XXX(猫的名字)和XXX(主人的名字)一起玩耍,传入一个Person对象,打印XXX(猫的名字)和XXX(传入的人)一起玩耍

编写一个测试类,创建三只猫:加菲、Kitty、哆啦A梦,将这三只猫放到一个数组中,循环数组元素并调用eat和两个play方法

4. 请编写一个关于星期几的枚举WeekDay,要求:枚举值:Mon,Tue,Wed,Thu,Fri,Sat,Sun 该枚举要有一个方法,调用该方法返回中文格式的星期。

5. 人机猜拳(出拳规则:1.剪刀 2.石头 3.布)

选取对战结束

猜拳

记录输赢

要求:1) 创建一个用户类,实现用户出拳

2) 创建计算机类,实现计算机出拳

3) 创建游戏类,选择对战选手,编写游戏类的初始化方法和开始游戏方法

4) 实现一局对战,分别调用用户类和计算机类的出拳方法,接受返回值并比较,给出胜负结果

6. 模拟银行账户业务,进行余额查询,实现存款和取款

要求:1) 创建一个银行账户类,有账户余额

2) 向账户中存钱

3) 向账户中取钱,先判断账户余额是否大于要取的钱

4) 编写一个测试类

7. 模拟火车站售票系统

要求:1) 创建一个证件类,有两个子类分别是身份证和学生证

2) 创建一个车票类

3) 创建一个火车站类,售票方法,方法参数有证件、日期、目的地,返回值为车

票。如果证件是学生证,车票打对折;如果为身份证,原价

4) 创建测试类,输出车票的信息

面向对象方法精粹大作业

面向对象方法精粹

目录 1 需求分析..................................................... 错误!未定义书签。 1.1 项目描述 (3) 1.2 功能描述 (3) 2 构建功能模型 (5) 2.1 确定系统边界 (5) 2.2 寻找参与者 (5) 2.3 寻找用例 (5) 3 构建结构模型 (8) 3.1 寻找并保留正确的类 (8) 3.2 准备数据词典 (8) 3.3 寻找关联属性并细化 (9) 4 构建行为模型 (11) 4.1 状态机图 (11) 4.2 活动图 (12) 4.3 顺序图 (14)

1需求分析 1.1 项目描述 该项目建立一个育童网站,旨在为没有时间呵护孩子成长的年轻父母提供育童服务。网站采取B/S架构,客户通过浏览器获取所需服务,注册账号,订购服务。公司通过后台管理订单。同时,网站设有育童论坛,供年轻父母进行交流与分享,通过论坛方式可获得育童积分,累积可转换为育童券,进行购物。网站同时为年轻父母提供第三方支付的服务和旅游,餐饮与医疗服务。在购买服务时的支付方式为第三方支付和育童券支付,育童券可以冲抵现金,但不能兑换现金。每个账号有自己的等级,等级越高则购买相应服务折扣越大。 该网站为一个P2P的线下服务平台,主要客户为时间不充裕的年轻父母,主要商家为育童公司,以及与育童网合作的旅游,餐饮和医疗公司。通过育童公司订购的旅游,餐饮和医疗服务将享有折扣。 1.2 功能描述 用户(年轻父母): 1.年轻父母可提交服务订单; 2.年轻父母可提交自己的育童服务专页(含认知教程,营养食谱,医疗 卫生,屋舍设施,户外环境); 3.年轻父母可向亲朋好友发送孩子百日电子请柬; 4.年轻父母在线支付育童服务费(如网银,第三方,爱童券等); 5.年轻父母分享孩子成长视频/图片获得爱童券; 6.年轻父母之间可以相互交流;

c++面向对象程序设计大作业

《面向对象程序设计》 大作业 题目学生成绩管理系统 学院 专业 班级 姓名 指导教师 2015 年11 月11 日

目录 一大作业的目的 (1) 二大作业的内容............................ . .. (2) 三大作业的要求与数据............... ...... . (3) 四大作业应完成的工作.................. . (4) 五总体设计(包含几大功能模块)........... . (5) 六详细设计(各功能模块的具体实现算法——流程图) (6) 七调试分析(包含各模块的测试用例,及测试结果) (7) 八总结 (8) 十参考资料 (9)

一大作业的目的 《面向对象程序设计》是一门实践性很强的课程,通过大作业不仅可以全方位检验学生知识掌握程度和综合能力,而且还可以进一步加深、巩固所学课程的基本理论知识,理论联系实际,进一步培养自己综合分析问题和解决问题的能力。更好地掌握运用C++语言独立地编写、调试应用程序和进行其它相关设计的技能。 二大作业的内容 对学生信息(包括学号、语文、数学、英语、平均分)进行管理,包括学生成绩的信息输入、输出、查询、删除、排序、统计、退出.将学生的成绩信息进行记录,信息内容包含:(1)学生的学号(2)学生的姓名(3)学生的成绩。假设,现收集到了一个班学生的所有成绩信息,要求用C语言编写一个简单的成绩管理系统,可进行录入、查询、修改和浏览等功能。学习相关开发工具和应用软件,熟悉系统建设过程。 三大作业的要求与数据 1、用C++语言实现系统; 2、对学生信息(包括学号、姓名、语文、数学、英语、平均分)进行管理,包括学生成绩的信息输入、输出、查询、删除、排序、统计、退出. 3、学生信息包括:其内容较多,为了简化讨论,要求设计的管理系统能够完成以下功能: (1) 每一条记录包括一个学生的学号、姓名、3门课成绩 (2)、成绩信息录入功能:(成绩信息用文件保存,可以一次完成若干条记录 的输入。) (3)、成绩信息显示浏览功能:完成全部学生记录的显示。 (4)、查询功能:完成按姓名查找学生记录,并显示。 (5)成绩信息的删除:按学号进行删除某学生的成绩. (6)、排序功能:按学生平均成绩进行排序。 (7)、应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!

第4章-Java语言与面向对象作业习题与答案

第4章 Java语言与面向对象作业习题与答案 一、简答题 1.什么是对象?什么是类? 对象是一种抽象数据类型。它包含了事物的静态特征(属性)和动态特征(行为)两大特征。 类是一组同种对象的集合与抽象。即是具有相同属性和方法的一组对象集合。 2.Java语言的单继承是指什么? 一个类可以派生出多个子类,但子类只允许有一个父类,而不允许存在多个父类。 3.在一个共有类中的数据成员及方法成员的访问控制符为缺省,则这个类可供什么样的包引用? 当一个类的访问控制符为public共有时,表明这个类作为整体对其它类是可见和可引用的;但其数据成员和方法成员访问控制符为缺省时,它们只能被包中类(含当前类)引用。 4.抽象类的用途 (1)设计在更高的层次上进行,不考虑具体对象,从而大大简化了处理问题的复杂性; (2)设计出的类也具有更加良好的可扩展性。 5.什么是非静态的成员变量? 非静态成员即为实例成员变量(没有加static修饰的变量)。 6.异常Exception和错误Error有什么不同?Java如何处理它们? 答:错误通常是指程序本身存在非法情形,常常是因为代码存在问题而引起的,如造成系统崩溃、虚拟机粗错、动态失败等,这一类错误无法恢复或不可能捕获,并将导致应用程序中断。 异常表示另外一种“非同寻常”的错误。这种错误通常是不可预测,但可以被捕获且可以恢复。常见的异常情况包括存不足、找不到所需文件等。 对于错误,编程人员可以通过对程序进行更仔细的检查,以避免这种错误。 对于异常,可以使用捕获机制进行捕获,再编写出相应的处理程序。 7.简单述Java的异常处理机制。 答:Java采取“抛出—捕获”的方式,一旦一个异常想象产生,Runnable环境和应用程序会抛出各种标准类型和自己定义的异常,系统就可以捕获这些异常,并一定有相应的机制来处理它,确保不会产生司机、死循环或其它对操作系统的损害,从而保证了整个程序运行的安全性。 8.简单述throw语句和throws关键字之间的差别。 答:throw语句是在一个方法中用来直接抛出异常对象,其格式是: throw 异常对象; throws关键字是用一个方法声明首部,用来指出这个方法中可能产生若干种异常,其格式:[方法修饰符] 返回类型方法名(参数表)throws 异常类型表 { /*方法体*/ } 二、填空题 1.所有Java应用程序都必须包含的一个类方法是 main() 。 2.面向对象程序设计语言的三种重要特性是封装性、继承性和多态性。

《面向对象分析设计》大作业案例

《面向对象分析设计》 大作业 网上招聘系统分析设计与实现 专业: 班级: 学号: 姓名:

成绩: 二〇一四年六月 大连理工大学城市学院 目录 第一章网上招聘系统需求规格说明书................ - 3 -第二章软件项目的概要设计说明书 (32) 第三章网上招聘系统详细设计 (101) 第四章软件项目的编码案例说明 (134) 第五章网上招聘系统客户端系统测试计划 (152) 第六章网上招聘系统客户端系统测试设计 (161) 第八章网上招聘系统客户端系统测试报告 (199)

第一章网上招聘系统需求规格说明书 1.导言 1.1 目的 该文档是关于用户对于网上招聘系统的功能和性能的要求,重点描述了网上招聘系统的功能需求,是概要设计阶段的重要输入。 本文档的预期读者是: ·设计人员; ·开发人员; ·项目管理人员; ·测试人员; ·用户。 1.2 范围 该文档是借助于当前系统的逻辑模型导出目标系统的逻辑模型的,解决整个项目系统的“做什么”的问题。在这里,没有涉及开发技术,而主要是通过建立模型的方式来描述用户的需求,为客户、用户、开发方等不同参与方提供一个交流的平台。 1.3 编写说明 HR,Human Resource(人力资源管理)的缩写。

JSP,Java Server Page(Java服务器页面)的缩写,一个脚本化的语言。 UML,Unified Modeling Language(统一建模语言)的缩写,是一个标准的建模语言。 1.4 术语定义 无 1.5 引用标准 [1]《企业文档格式标准》,****************有限公司软件工程过程化组织 [2]《需求规格报告格式标准》,************有限公司软件工程过程化组织 1.6 参考资料 [1]《UML说明》,***********************软件有限公司 [2]《需求规格报告格式标准》,************公司软件工程过程化组织 1.7 版本更新信息 本文档的更新记录如表A-1所示。 表A-1 版本更新记录

2016年电大面向对象程序设计技术-作业题

2015秋季学期计算机科学与技术本科 《面向对象程序设计技术》作业题 (在电大在线该课程讨论区跟帖提交,注明姓名和学号以记录成绩)选择题 1.可以在本类及派生类的成员函数中进行访问的访问控制修饰符是(B) A.private B.protected C.public 2.在IDE中将编程项目采用多文件结构下,类的定义一般放在(A) A.头文件 B.程序文件 C.主程序文件 3.内联成员函数在类外定义时要将其和类定义一起放在(A) A.头文件 B.程序文件 C.主程序文件 4.下面哪个内存区域是C++中的运行时动态内存分配区域?( D ) A.代码区 B.栈区 C.数据区 D.堆区 5.对象作为函数参数使用时,一般使用(A)形式 A.引用 B.指针 C.对象拷贝

6.同类的多个不同对象的数据成员值各有不同,但不同对象可以共享类的成员函数代码, 实际调用成员函数时,是通过(B )来区分不同对象的。 A.显式给出不同对象不同地址 B.隐含的this指针 C.引用 7.下面哪一种情况不会自动调用拷贝构造函数。(E) A.用一个对象初始化另一个对象时 B.当一个对象作为值传递给一个函数时 C.当一个对象作为值从一个函数返回之前,该对象被拷贝到栈区 D.函数调用结束后,栈区中的返回对象拷贝给主调程序的对象 E.建立指向对象的指针并初始化指针值时 8.下列哪些对象的数据成员类型可以不用初始化表的方式进行初始化(D) A.常量数据成员 B.引用数据成员 C.类中对象成员 D.一般数据成员 9.下列哪一种类设计一般无需在类中设计静态数据成员以使建立的多个对象共享静态数 据数据成员。( D ) A.一个链表类的头指针和尾指针 B.一个学生类中用于保存建立了多少个学生对象的计数器 C.银行帐号类中的年利率 D.一般只用于建立一个对象的类 10.一个类中的公有(public)性质的静态数据成员,以下哪一种访问方式是错误的(D) A.对象名.静态数据成员名 B.指向对象的指针—>静态数据成员名 C.类名::静态数据成员名 D.类名.静态数据成员名 11.下列哪一个运算符不能够被类所重载(E) A.“.”成员访问运算符 B.“*”成员指针访问运算符 C.“::”域运算符 D.“?:”条件运算符 E.“=”赋值运算符

面向对象程序设计作业(带答案)

人工智能学院 面 向 对 象 程 序 设 计 作 业

Java语言基础 年级专业 2019级软件工程专业学号姓名成绩 一、选择题 1.下列标识符中,正确的是(C)。 A.class B. 123_rr C. _lei D. test&12 2.下列( D )的选项可以正确表示八进制8。 A.0x8 B. 0x10 C.08 D. 010 3. 以下哪个是十进制数17对应的十六进制正确表示?( D ) A. 017 B. x11 C. 0x17 D. 0X11 4.在Java中,不属于整数类型的是( A )。 A.double B. long C. int D. byte 5.在Java中,关于标识符的说明,不正确的是(D )。 A.严格区分大小写; B.长度不限; C.不能用关键字和保留字作为标识符; D.可以包含空格 6.给出下面代码的输出结果。( D ) public class ByteAdd { public static void main(String args[ ]){ byte a=10; byte b=100; byte c; c=a+b; System.out.println(a+"+"+b+"="+c);} } A.输出零 B.输出 10+100=110 C. 编译时正确,运行时将产生错误; D.编译时将产生错误; 二、程序阅读题 1. 对于以下程序,运行“java Abs”,将得到什么打印结果?public class Abs{ static int a=0x11; static int b=0011; static int c='\u0011';

吉林大学 2019-2020学年第一学期期末考试《面向对象程序设计》大作业答案

吉林大学网络教育学院 2019-2020学年第一学期期末考试《面向对象程序设计》大作业答案 参考答案在后面 学生姓名专业 层次年级学号 学习中心成绩 年月日

作业完成要求:大作业要求学生手写,提供手写文档的清晰扫描图片,并将图片添加到word 文档内,最终wod文档上传平台,不允许学生提交其他格式文件(如JPG,RAR等非word 文档格式),如有雷同、抄袭成绩按不及格处理。 一、名词解释(每小题2分,共20分) 1、预处理 2、宏 3、文档 4、视图 5、控件 6、全局变量 7、局部变量 8、对象 9、派生 10、继承 二、简答题(每小题6分,共60分) 1、简要说明Visual C++和C++的区别: 2、C++程序与C程序文件扩展名有什么区别? 3、简述计算机程序设计语言的发展历程。 4、“编程就是用开发工具写软件”,这种理解你怎么看。 5、C语言是一门面向过程的语言,那么C++是面向什么的语言? 6、面向对象的程序设计,其一个重要特点就是“类”的封装,请问“类”中封装了什么? 7、初始化一个整型数组,内容是1,2,3: 8、简述C++的主要特点 9、面向对象程序设计,其“对象”指什么? 10、MFC作为一个Windows编程类库,它包含了200多个类,封装了Windows的大部分编程对象以及与它们有关的操作。请简述采用MFC编程的优点。 三编程题(每小题10分,共20分) 1、输入三个数并求和 #include void main() { cout<<”please enter the value of x,y,z: ”; —————— —————— —————— }

面向对象程序设计(答案)

学号:姓名: 第三章面向对象程序设计作业 一、判断题 1、一个Java源程序可有多个类,但只仅有一个public类,而且程序名与public类名相同。对 2、如果类A和类B在同一个包中,则除了私有成员外,类A可以访问类B中所有的成员。对 3、接口中的成员变量全部为常量,方法为抽象方法。对 4、抽象类可以有构造方法,可以直接实例化。错 5、对static方法的调用可以不需要类实例。对 6、包含抽象方法的类一定是抽象类。对 7、方法中的形参可以和方法所属类的属性同名。对 8、接口无构造器,不能有实例,也不能定义常量。错 9、类的实例对象的生命周括实例对象的创建、使用、废弃、垃圾的回收。对 10、Java应用程序的入口main方法只有一种定义法。对 二、选择题 1、下列答案正确的是(A ) A) 在同一个Java源文件中可以包含多个类,只能有一个被声明为public B) 在同一个Java源文件中只能包含一个类,并被声明为public C) 在同一个Java源文件中可以包含多个类,都可以被声明为public D) 在同一个Java源文件中可以包含多个类,只能有一个被声明为default 2、Java实现动态多态性是通过( B )实现的。 A) 重载B) 覆盖 C) 接口D) 抽象类 3、下列哪一个是正确的方法重载描述( A ) A) 重载方法的参数类型必须不同 B) 重载方法的参数名称必须不同 C) 返回值类型必须不同 D) 修饰词必须不同 4、final关键字不可以用来修饰( D ) A) 类B) 成员方法 C) 域D) 接口 5、接口的所有成员方法都具有( B )属性 A) private, final B) public, abstract C) static, protected D) static 6、Java的封装性是通过(A )实现的 A) 访问控制B) 设计内部类 C) 静态域和静态方法D) 包 7、下列接口或类不属于.*包的是( D ) A) Collection B)Vector C) Map D) Integer 8、下述哪一组方法,是一个类中方法重载的正确写法( A ) A) int addValue( int a, int b ){return a+b;}

面向对象程序设计大作业(C++)

面向对象分析/设计课程大作业 银行业务处理系统 13级软件学院测试班 1367004029 曾丹 1.需求分析 随着社会经济的发展,信息化程度的不断深入,银行的传统业务己愈来愈不能满足银行客户的需要。 现今,人们的金融意识、科技意识己经有了很大的提高,在紧张忙碌的生活中,己越来越来不习惯每月奔忙于各银行营业柜台之问去排队缴各种各样的费用了;同时,各种经营单位如电信、移动、供电、煤气、自来水、证券等等一是为了提高服务质量、方便客户,二是为了减轻自己日趋繁重的工作量,纷纷委托银行为其开展代收代付业务:同时,随着我国加入世贸组织的日益临近,我国的银行业将面临更加激烈的同业竞争,如何提供更多的金融产品和更优质的服务,如

何吸引更多的客户,如何利用计算机技术加强银行帐户信息管理、进行银行业务再造,提高银行的工作效率和业务竟争能力是摆在各家银行面前的一个迫切需要解诀的问题。 近几年来,各商业银行加快了与社会各业的合作,利用自身的网点优势和业务特点,为其提供各种高效、快捷的代收代付业务,也就是中间代理业务,目前以与广大人民群众生活密切相关的各项缴费业务如水电费、电话费、手机费等代收业务为主,这些业务开展方式多种多样,但一般都离不开计算机的高效管理支持。 随着代理业务不断发展,业务品种越来越多,各项业务做法互有差异,这就对银行的电子化水平和相应的管理水平提出了更高的要求。如何利用电子化的手段构建一个高效统一的、通用灵活的系统来管理各种各样的业务,是每个商业银行所要研究的课题。支持决策系统的,需要在数据库的基础上,进行联机分析处理,每次处理的数据量大,响应时间长。 特别是银行每天要处理大量的存取款事件,做好存取款是银行工作重要的环节,然而要有效处理必须要有良好的程序和数据管理系统来建立一个良好的软件系统来实现快速、有效、准确、安全的处理银行事物。 主要用于银行的储蓄卡管理系统,它可以帮助我们有效、准确、并且高效实现的完成存取事件。此系统操作方便效率、安全性高,只要客户开户并设定好密码就可以轻松的实现存取款。 系统实现的主要有储蓄卡开户管理、存取款管理、用户查询历史数据显示、注销等功能。 储蓄卡开户管理模块:卡号、姓名、开户金额、身份证号、地址、电话、密码、确认密码和保存组成。(开户金额必须是数字,密码和确认密码必须一样是六位数字) *注销模块:一旦注销该卡号就不存在且余额提醒你取出。 通过该银行账户管理系统地运行,使办公人员可以轻松快捷的完成对账户管理的任务,提高账目管理效率,使银行的账目管理工作系统化、规范化、自动化。 该银行帐目管理信息系统,优点是设计过程思路清晰、模块划分简洁,设计各阶段分工明确。经过实践证明,该划分是合理的,极大得提高了本系统的实现。

面向对象程序设计大作业 2

面向对象程序设计大作业 计算器类 完成时间:2013 年 5月25日

计算器类 1.编程目的 设计实现计算器类,能进行整数及实数的加、减、乘、除、平方、开方等基本运算,及能进行二进制,十进制,八进制,十六进制数值之间的转换,以及能进行三角函数的计算。 2.系统简介 本程序利用类完成了十进制下的四则运算(加,减,乘,除),可以把十进制转化为二进制、八进制、十六进制,可以进行一些常用的函数运算(比如sin、cos、tan、sqrt等)。程序设计语言采用Visual C++6.0,程序运行平台Windows 7,程序通过调试运行实现了设计目标。 刚开始时出现主要的运算界面,然后进行选择1-3.选择1,则进行一般运算;选择2,则进行三角函数运算;选择3,则进行进制的转换。若选择1,则又分为1-7个选择,利用if...else if...else...语句来实现。若选择1,进行加法运算;选择2,进行减法运算;选择3,进行乘法运算;选择4,进行除法运算;选择5,进行取余运算;选择6,幂运算;选择7,开方运算。三角函数和进制转换与此类同。 3.编程思路 本程序分为三类:(1)实现了十进制下的四则运算(加、减、乘、除),还可以进行平方、开方的运算及幂的运算;(2)实现十进制转换为二进制、八进制、十六进制。(3)进行三角函数的基本运算。 建立一个文件,该文件包含三个类程序分别为class Trigonometric、class HexBinDecOct、class Calculate且分别对应三角函数运算、进制转换、一般运算,最后是一个主函数。 4总体设计(附类图) 编程实现计算器,用类来完成。首先,编写的是三角函数(sin、cos、tan)的实现类;其次,一般运算(加、减、乘、除、开方、幂)类;最后是,把十进制转换为二进制、八进制、十六进制。 具体程序实现如下图表示: 计算器类class 一般运算class calculate 三角函数class Trigonometric 进制转换class HexBinDecOct

软件工程大作业

《软件工程》 大作业 学期:2015秋季学期 班号: 学号: 姓名: 成绩: 子与信息工程学院 2015年10月

目录

第1章系统概述 随着计算机网络技术和信息技术的不断发展,人类信息资源实现高度共享,从根本上改变了人类生活的方式,网上购物作为一种新型的购物方式,以其快捷方便的特点成为了人们购物的主要选择。网上支付的不断完善,加上物流业的配套建设,使得用户能够足不出户就能挑选商品,节省了时间和金钱,这种网上购物方式越来越受到人们的青睐。 1.1系统介绍 网上商城系统是一个可以方便各类人群所需,省时省力全方位的大型购物网上商城,可以让所需人群足不出户不分地域时间的购买所需用品。网上商城系统共分为两个部分:前台用户部分和后台管理部分。在前台系统中有用户注册登陆,浏览商品,选购商品,订购商品。后台系统中有系统管理,会员管理,订单管理,商品管理。在用户注册模块中,分别加强了用户注册信息验证的严格性;在商品或商家信息浏览和查询模块中,用户可以对商品进行浏览检索,查看商品的详细信息;非注册会员可以选定商品加入购物车,但只有注册成会员的用户才能对商品进行购买。在后台系统中,系统管理员可以对已注册的用户进行审查,可以对现有的商品进行管理;并对提交的订单进行处理与邮寄。 1.2开发的目的与意义 在线购物系统,从结构上讲,可以划分为前台和后台两个部分,主要涉及到前、后台的网页设计,以及与数据库相关的操作。在网络应用中,数据库的应用是一个很关键的环节。特别地,随着Internet的普及和人们对于互联网的依赖性,许多基于互联网的应用也不断的涌现出来。基于B/S(浏览器、服务器)构架开发网站和系统已成为一种主流趋势,人们对其的需求也越来越大。 现在已经进入网络时代,很多电子产品的生产企业也开始意识到了网络的重要性,开始在电子产品中加入对网络服务的支持。比如在智能手机中增加了对移动互联网应用的支持,这在提升了电子产品的竞争力的同时,也扩展了电子商务的应用范围。 总体上看,电子商务的发展,具有十分良好的发展前景。

面向对象程序设计作业参考答案

习题一 5、分析下面程序运行的结果。 # using namespace std; int main() { cout<<”This”<<”is”; cout<<”a”<<”C++”; cout<<”program.”< using namespace std; int main() { int a,b,c; a = 10; b = 23; c = a + b; cout<<'a + b ="; cout< using namespace std; int main() { int a, b; a = b = 0; int c = a + b; cout<<”a + b =”<

9、输入以下程序,进行编译,观察编译情况,如果有错误,请修改程序,在进行编译,直到没有错误,然后进行连接和运行,分析运行结果。 修改后的程序如下: #include using namespace std; int add(int x,int y); int main() { int a = 0, b = 0; int c = add(a,b); cout<<" a + b ="<

大三《面向对象技术》上机作业

《面向对象技术》 上机作业 一、设计目的和时间安排 ●掌握面向对象程序设计的基本思路和方法。 ●利用所学的基本知识和技能,解决简单的面向对象程序设计问题。 二、内容及要求 自学《教材》前14章,利用所学到的Java编程知识和编程技巧,设计一个实际的应用软件,初步认识软件设计的基本方法,提高进行工程设计的基本技能及分析、解决实际问题的能力,为后续课程和以后的工程实践打下良好的基础。 三、考核方式 请在考试前将代码打包,命名为“学号_姓名.rar”,发送到 guokehua@https://www.360docs.net/doc/893665280.html,,注意,千万不能发错,否则后果自负。 四、时间、地点安排 见 csu_xxxy_jsj@https://www.360docs.net/doc/893665280.html, 邮箱。 五、题目(根据你的学号尾数除以5的余数,选1题。) 0. 人事信息管理系统: 主要功能如下: 1.添加功能:添加一个职员的基本信息,包括姓名,身份证号码,家庭住址,联系电话,薪水,性别; 2.显示功能:显示所有职员的详细信息; 3.查找功能1:根据你键入的职员姓名,显示其详细信息;

4.查找功能2:输入性别(男或女),显示该性别所有职员的详细信息。 1.通讯录: 主要功能如下: 1.添加功能:添加一个联系人的基本信息,包括姓名,电话号码,身份证号码,家庭住址,性别; 2.查找功能:根据你键入的联系人姓名,显示其详细信息; 4.修改功能:对联系人的基本信息进行修改。 5.删除功能:根据你键入的联系人姓名,可以对其进行删除操作。 2.学生成绩管理系统: 主要功能如下: 1.添加学生信息功能:添加一个学生的基本信息,包括学号、姓名,性别; 2.添加课程信息功能:添加一个课程的基本信息,包括课程号、课程名称; 3. 添加考试成绩功能:添加考试成绩:输入一个学生的学号,输入一个课程 号,输入分数; 4.统计功能:输入姓名,能显示某学生各门科目的课程号和分数。 3.客房管理系统 主要功能如下: 1.添加客房信息功能:添加一个客房的基本信息,包括房号、价格; 2.添加住宿信息:添加顾客住宿信息,包括顾客姓名、身份证号、房号,天数;

面向对象程序设计试卷作业答案

《面向对象程序设计》作业答案 作业一: 编写程序,将从键盘读入的所有大小写字母写入名为a.txt的文件中(遇EOF结束)。(本题总分10分,fopen函数使用妥当4分,读入过程正确4分,关闭文件2分。程序结构完整,有不妥之处,酌情扣分。) #include main ( ) { FILE *fptr; fptr = fopen("a.txt","w"); if (fptr==NULL) return 0; char a; a=getchar( ); while(a!=EOF ) { if(a>=’a’ && a<=’z’|| a>=’A’ && a<=’Z’) fputc(a,fptr); a = getchar(); } fclose(fptr); return 0; } 作业二 定义一个矩形类Rectangle,并在main函数中用它声明一个矩形对象,然后利用接口 设置该矩形对象的长和宽、计算面积并输出。(本题总分10分,类结构2分,设置矩阵对象的长与高各1分,计算面积函数2分,输出函数2分,主函数2分。程序结构完整,有不妥之处,酌情扣分。) #include #include class Rectangle { public: int getArea(); void setWidth(int w); void setLength(int l); private: int Length; int Width;

}; int Rectangle::getArea() { return Length*Width; } void Rectangle::setLength(int l) { Length=l; } void Rectangle::setWidth(int w) { Width=w; } main() { int len,wid; Rectangle r1; cout<<"Input the Rectangle's Information"<>len; cout<<"Width:"<>wid; r1.setLength(len); r1.setWidth(wid); cout<<"Rectangle's Area:"< #include struct Node { int item; struct Node *next; };

面向对象技术大作业要求

《面向对象技术》课程大作业任务书 一、大作业基本要求 (1)要求利用面向对象的方法以及c++的编程思想来完成系统的设计; (2)要求在设计的过程中,建立清晰的类层次; (3)在系统中至少要定义两个类,每个类中要有各自的属性和方法; (4)用VC++6.0及MFC开发软件; (5)程序要自己完成,不可抄袭。 二、大作业参考题目(任选一题,或经过批准自选题目) 题目一:学生信息管理系统 要求完成以下功能: 1)从屏幕上输入学生信息并保存数据,例如采用文件方式保存。学生信息包括地址、出生 日期、学科成绩(语文,英语,数学,物理)、个人信息(姓名,性别,民族,国籍,学历)、联系方式(手机,家庭电话,学校电话)等。 2)从文件中删除一个学生信息。 3)显示所有学生信息。 4)能够按编号或姓名对学生的信息进行检索并将检索结果显示在屏幕上。 5)能够对单个学生进行编辑。 6)可以统计全部学生的总成绩,及其在班上的排名。 7)能够统计各科的平均成绩及及格率。 8)要求有错误提示功能,例如性别只能输入男女,输入错误提示重新输入。 9)如果检索不到相应的信息应提示用户。 10)要求利用菜单的形式进行管理。 提示:可以用单链表每个节点存储一个学生的信息。可以采用文件存储。需要创建链表类,操作类,地址类,链表结点类,学生类,分数类,电话号码类等 题目二:图书管理系统设计 要求完成以下功能: 1)借书。图书借阅信息:借阅人、借阅人所在单位、借书证号、所借书名、借阅日期、归还日期、逾期罚款等。借阅期限为一个月,逾期1天,罚款1角。 2)还书。 3)图书维护:删除图书,增加图书等。图书基本信息:图书编号、书名、作者(要考虑多个作者情况)、出版社、出版日期、定价、馆藏数、借阅数等。 4)读者维护:包括新增读者、更改读者信息、查找读者、读者信息删除、读者信息输出。5)要求利用菜单的形式进行管理。 提示:建议对读者和图书都使用类进行管理。需要创建类

面向对象作业

面向对象上机练习题 (用例图、状态图、泳道图、数据流图) 1.一个图书管理系统的功能需求主要包括以下几个方面:借阅者可以通过网络查询书籍信息和预定书籍。借阅者能够借阅书籍和还书。图书管理员能够处理借阅者的借阅和还书请求。系统管理员可以对系统的数据进行维护,如增加、删除和更新书目,增加、删除和更新借阅者帐户,增加和删除书籍。请画出图书馆管理员处理借书、还书等的用例图和系统管理员进行系统维护的用例图。 2.假设一个包中的对象分为简单对象和复合对象。简单对象分别是弧、椭圆、折线、多边线。简单对象可以被移动、旋转、复制、擦除。复合对象由简单对象组成,复合对象可以移动、旋转、复制、擦除。组成复合对象的简单对象不能个别地被修改。请画出类图。

3.复印机的工作过程大致如下:未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令;如果执行复印命令时发现没纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接收复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告等待维修人员来排除故障,故障排除后回到闲置状态。请用状态转换图描绘复印机的行为。

4.假如要建立一个网站,用于发布家教消息,同时建立家教及学生的沟通桥梁。基本需求如下: (1)家教求职者希望能注册本人信息、修改本人资料、浏览家教信息、搜索家教信息。(2)学生希望能够注册本人信息、修改本人资料、浏览家教信息、搜索家教信息。(3)管理员希望能够发布网站公告、处理家教信息。 根据上面提出的基本需求,加以设计,建立家教网上发布系统的用例图。

面向对象软件工程—课后作业

面向对象软件工程 第八章 8.1.什么是面向对象方法学,它有哪些优点? 答:面向对象方法学是尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类解决问题的方法与过程,使描述问题的问题空间与实现揭发的解空间在结构上尽可能一致的方法学科。优点:1、与人类的习惯的思维方法一致;2、稳定性好;3、可重用性好;4、适合用于大型软件产品;5、所开发的软件有较好的可维护性;6、面向对象的软件比较容易修改;7、面向对象软件比较容易理解;8、易于测试和调式。 8.2.什么是对象,它与传统的数据有何异同? 答:对象是对问题域中某个实体的抽象。相对于传统数据的静态被处理,对象既有静态的属性,又有动态的行为,是进行处理的主体。 8.3.什么是类? 答:类是对具有相同数据和相同操作的一组相似对象的定义。

8.4.什么是继承? 答:继承是指能够直接获得已有事物的性质和特征,而不必重复定义他们。 8.5.什么是模型,开发软件为何要建模? 答:所谓模型就是为了理解事物而对该事物做出的一种抽象,是对事物的一种无歧视定义的书面描述。由于模型忽略了事物的非本质东西,因此模型比原始事物更容易操作。对于那些因过分复杂而不能直接理解的系统,特别需要建立模型,建模的目的主要是为了降低复杂性。人的头脑每次只能出来少量信息,模型通过把系统的重要部分分解成人的头脑一次能处理的若干个子部分,从而减少了系统的复杂程度。 8.6.什么是对象模型,建立对象模型时主要使用哪些图形符号,这些符号的含义是什么? 答:对象模型表示静态的、结构化的系统性质,是对模拟客观世界实体的对象以及对象彼此间的关系的映射,描述了系统的静态结构。在UML中,用类图来建立对象模型,表示一个类及属于该类的对象。 8.7.什么是动态模型,建立动态模型时主要使用哪些图形符号,这些符号的含义是什么? 答:动态模型时描述系统控制结构,即行为化的一种模型。在UML

面向对象的分析与设计大作业文档

面向对象的分析与设计课程结课大作业 学号 学生姓名 专业 班级 塔里木大学教务处制

《面向对象的分析与设计》课程结课作业 提示:1、请将答案写在此文档的相应位置,图形需在Rational Rose下绘制,大小可以根据个人需求定制(宽不超过页面1/3);2、请将相关的文档,包括程序的相关文档进行压缩,并将压缩文档上传到ftp://210.26.176.123“大作业电子版文档”文件夹下命名为“班级-学号-姓名”,纸质版于2015年6月12日上午10:00—13:00交到逸夫楼109。 一、选题(此题5分) 请根据你抽中的题号,请将其所对应的题目写到下方,并将你要描述的界面进行截图。 题目:照相(即手机的“相机”软件) 该相机软件为SONY XPERIA Z系列手机的自带相机软件。图中第五行第二列的软件。

相机 用例图用到的界面:A D E F 类图用到的界面:B C D E F 序列图和协作图用到的界面:A C 状态图用到的界面:A C 活动图用到的界面:A B C D E F 部署图用到的界面:A A B C

D E F 二、用例图建模(此题15分) 请根据自己所选择的题目,描述一段不少于100字的需求分析,并绘制相应的用例图。此题要求:用例图中,用例的粒度不少于5个,必须绘制参与者和用例,尽量使用用例图中所有的要素,用例图的数量不少于2个。请注意:文字描述要与用例图相对应。 1、需求分析如下所示: 图1 用户用例图:需户对相机进行各方面的操作,例如用户对照相、摄像、相册、模式、前后置摄像头的切换、闪光灯、设置等进行操作。 图2 用户设置用例图:需要用户能在设置中对照片设置、视频设置、相机设置等,对相机的参数进行修改。 图3 用户拍照用例图:需要用户能切换前后置摄像头进行拍照,成像系统生成图像,显示在显示屏上,并且存储照片。

成人教育面向对象技术复习题及参考答案

山东师范大学成人高等教育计算机科学与技术专业 (专升本、高起本)科《面向对象技术》课程复习题A 参考答案在试卷后(7月无纸化考试) 一、单项选择题(每小题1分,共20分) 1、假定MyClass为一个类,则执行“” MyClass a[3],*p[2];”语句时,自动调用该类构造函数的次数为() A、2 B、3 C、4 D、5 2、对于类中定义的成员,其隐含访问权限为() A、protected B、private C、public D、static 3、一个类的友元函数或友元类能够通过成员操作符访问该类的() A、私有成员 B、所有成员 C、公用成员 D、保护成员 4、下面说法正确的是() A、构造函数可以重载,析构函数不能重载。 B、构造函数不能重载,析构函数可以重载。 C、构造函数可以重载,析构函数也可以重载。 D、构造函数和析构函数都不可以重载。 5、下列语句的运行结果为() #include srtuct COMPLEX { int x; int y; } cNum[2]={1,3,2,7}; void main() { cout<< cNum[0].y*cNum[1] x<

《面向对象的程序设计》在线作业二

北交《面向对象的程序设计》在线作业二 一、单选题(共23 道试题,共57.5 分。) 1. 已知枚举类型定义语句为:enum Token { NAME, NUMBER, PLUS = 5, MINUS, PRINT = 10 }; 则下列叙述中错误的是( )( A. 枚举常量NAME的值为1 B. 枚举常量NUMBER的值为1 C. 枚举常量MINUS的值为6 D. 枚举常量PRINT的值为10 正确答案: 2. 在下列函数原型中,可以作为类AA构造函数的是( ) A. void AA(int); B. int AA( ); C. AA(int)const; D. AA(int); 正确答案: 3. 下面关于析构函数特征的描述正确的是()。 A. 一个类中可以定义多个析构函数 B. 析构函数名与类名相同 C. 析构函数不能指定返回类型 D. 析构函数可以有一个或多个参数 正确答案: 4. 下面的哪个保留字不能作为函数的返回类型( )。 A. void B. int C. new D. long 正确答案: 5. 下列关于运算符重载的叙述中,正确的是( ) A. 通过运算符重载,可以定义新的运算符 B. 有的运算符只能作为成员函数重载 C. 若重载运算符+,则相应的运算符函数名是+ D. 重载一个二元运算符时,必须声明两个形参 正确答案: 6. 下列运算符中,不能被重载的是()。 A. 【】 B. .

C. () D. / 正确答案: 7. 有关运算符重载正确的描述是()。 A. C++语言允许重载运算符时改变运算符的操作个数 B. C++语言允许重载运算符时改变运算符的优先级 C. C++语言允许重载运算符时改变运算符的结合性 D. C++语言允许重载运算符时改变运算符原来的功能 正确答案: 8. 下列不是C++流对象的是( )。 A. cout B. cin C. cerr D. ostream 正确答案: 9. 通常拷贝构造函数的参数是() A. 某个对象名 B. 某个对象的成员名 C. 某个对象的引用名 D. 某个对象的指针名 正确答案: 10. 使用如setfill()的操作符对数据进行格式输出时,应包含( )头文件。 A. iostream B. fstream C. iomanip D. stdlib 正确答案: 11. 下面有关重载函数的说法中正确的是() A. 重载函数必须具有不同的返回值类型 B. 重载函数形参个数必须不同 C. 重载函数必须有不同的形参列表 D. 重载函数名可以不同 正确答案: 12. 有如下函数模板定义:template T func(T x, T y) { return x*x+y*y; } 在下列对func的调用中,错误的是( ) A. func(3, 5); B. func(3.0, 5.5); C. func (3, 5.5); D. func(3, 5.5); 正确答案: 13. 对于包括()类型数据成员的用户定义类型必须定义其析构函数 A. static B. 指针类型 C. 字符串

相关文档
最新文档