- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C实验二实验报告陈志灵
福建农林大学计算机与信息学院实验报告
系: 计算机与信息学院 专业: 计算机科学与技术 年级: 2011
姓名: 陈志灵 学号: 3116010036 实验室号 田C507 计算机号 108
实验时间: 2013.11.14 指导教师签字: 成绩:
实验名称:
一、实验目的和要求
1、理解继承在软件工程中的作用。2、掌握多态的“通用编程”的思想。
3、掌握运算符重载。
二、实验内容和原理
1、多态在工资系统中的应用。给出一个根据类型完成工资单计算的程序定义一个类Employee作为、PieceWorker、HourlyWorker。arnings(),该方法没有实质性的工作;而在每个子类中都提供了恰当的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;
namespace shiyan2
{
abstract class Employee
{
private string name;
public string Name
{
set
{
this.na
您可能关注的文档
最近下载
- 新22J04-2 内装修二(细部构造).docx VIP
- 第1课《消息二则》同步作业部编版语文八年级上册.docx VIP
- 2020新译林版高中英语选择性必修四Unit2 Integratedskills课件.pptx VIP
- NB/T 20007.1-2024 压水堆核电厂用不锈钢 第1部分:1、2、3级设备用奥氏体不锈钢锻件.pdf VIP
- 欧陆EV100系列矢量型变频器.doc
- 医疗机构管理条例试题及答案.docx VIP
- 2025年焊工(技师)职业技能鉴定理论考试题库(含答案).docx
- 山东省临沂市百师联盟2024-2025学年高三上学期开学考试化学试题(无答案).pdf VIP
- M1332B型 外圆磨床说明书完成版.pdf VIP
- 巴菲特名言经典语录巴菲特经典语录大全.doc VIP
文档评论(0)