网站大量收购闲置独家精品文档,联系QQ:2885784924

C实验二实验报告陈志灵.doc

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C实验二实验报告陈志灵

福建农林大学计算机与信息学院实验报告 系: 计算机与信息学院 专业: 计算机科学与技术 年级: 2011 姓名: 陈志灵 学号: 3116010036 实验室号 田C507 计算机号 108 实验时间: 2013.11.14 指导教师签字: 成绩: 实验名称: 一、实验目的和要求 1、理解继承在软件工程中的作用。 2、掌握多态的“通用编程”的思想。 3、掌握运算符重载。 二、实验内容和原理 1、多态在工资系统中的应用。请给出一个根据员工类型完成每周工资单计算的程序,具体要求如下: 定义一个类Employee作为父类,该类有三个子类:Boss类、PieceWorker类、HourlyWorker。 Boss类的工资计算的原则:不计工作时间,每周获得固定工资。 PieceWorker类的工资计算原则:根据生产的产品数量,每周发放工资。 HourlyWorker类的工资计算原则:根据工作时间,每周发放工资。每周工作的时间不超过40小时。 Employee类中定义了一个方法Earnings(),该方法没有实质性的工作;而在每个子类中都提供了恰当的Earnings()方法的重写。 定义TestEmployee类,在其Main方法中,创建三种类型的员工对象,并计算相应的工资。 2、请定义一个矩阵类,实现矩阵的转置、矩阵元素值的取反、矩阵的相减、矩阵的相加、矩阵的相乘、以及将矩阵元素的值乘以n等运算。 参考实验步骤及类图: (1)在Matrix类中,定义私有变量rows、cols和mat。 (2)定义两个构造方法:Matrix(int iRow, int Cols),Matrix(int iRow, int Cols, int dispersion )。其中,参数dispersion指定随机生成的矩阵元素的范围。如参数值dispersion为5,则使得矩阵元素的值在-5~5的范围内。 (3)定义属性Rows和Cols。在Set访问器中,提供参数合法性检查的代码。 (4)定义索引器this[int iRow, int iCol],实现根据行列号访问矩阵中的元素。 (5)重写ToString()方法,以“矩阵”的格式输出矩阵中的所有元素。 (6)定义私有方法Matrix StrassenMultiply(Matrix A, Matrix B) ,实现两个矩阵的相乘。 (7)定义私有方法Matrix Multiply(double n, Matrix m),实现将矩阵元素的值乘以n。 (8)定义私有方法 Matrix Add(Matrix m1, Matrix m2),实现两个矩阵的相加。 (9)调用上述方法,重载运算符“-”、“+”、“*”,依次实现将矩阵元素的取反、矩阵的相减、矩阵的相加、矩阵的相乘、以及将矩阵元素的值乘以n五类运算。 如:public static Matrix operator -(Matrix m) { return Matrix.Multiply(-1, m); } public static Matrix operator -(Matrix m1, Matrix m2) { return Matrix.Add(m1, -m2); } (10)定义public static Matrix Transpose(Matrix m)方法,生成转置矩阵。 (11)定义Test类,在其Main方法中,完成相关测试。 三、实验环境 Windows 7 四、算法描述及实验步骤 这个实验主要做类的继承以及运算符的重载,在充分理解继承和运算符重载,在编写代码是没什么困难的。 五、调试过程 在测试结果的时候,发现总是要输入矩阵的值,经过检查发现原来是每个重载里面都用到构造方法Matrix(int iRows,int iCols),而这个方法里面每次都要输入矩阵,所以重载的方法中的矩阵的初始化都被我改成无参构造,通过赋值初始化其他成员变量。 六、实验结果 1. 2. 七、总结 这次实验熟悉了类的继承和运算符的重载,更加了解C#编程的一些细节,也学了些快捷键。写代码的时候要注意编译器给出的错误提示,找出错误,然后更改,记住错误发生的原因,争取以后不犯同样的错误。 附录: 1. Employee.cs using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; names

文档评论(0)

eanp35308 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档