下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验报告二 类和对象一、 实验目的 本实验的目的是熟练学习和掌握类的定义及操作符的重载以及datatime结构。二、 实验内容及结果(一)、第1个题目的要求:定义完整的complexnumber类,在其中重载加减乘除等基本操作符、相等和不等操作符、大小比较操作符以及自增自减操作符 1、程序编程思路:首先定义一个complexnumber类,然后重载各种操作2、程序源码: static void main(string args) console.writeline("请输入第一个复数c1:"); complexnumber c1 = new complexnumber(do
2、uble.parse(console.readline(), double.parse(console.readline(); console.writeline("请输入第二个复数c2:"); complexnumber c2 = new complexnumber(double.parse(console.readline(), double.parse(console.readline(); complexnumber c3 = c1 + c2; console.writeline("这两个复数的和为 0", c3); complexnumber
3、c4 = c1 - c2; console.writeline("这两个复数的差为 0", c4); complexnumber c5 = c1 * c2; console.writeline("这两个复数的乘积为 0", c5); complexnumber c6 = c1 / c2; console.writeline("这两个复数相除为 0", c6); if (c1 = c2) console.writeline("这两个复数相等"); else if (c1 != c2) console.writelin
4、e("这两个复数不相等"); if (c1 > c2) console.writeline("c1>c2"); else console.writeline("c1<c2"); console.writeline("c1自增结果为 0", c1+); console.writeline("c1自减结果为 0", c1-); console.readline(); public class complexnumber private double x, y; public dou
5、ble x get return x; set x = value; public double y get return y; set y = value; public complexnumber(double x, double y) this.x = x; this.y = y; public static complexnumber operator +(complexnumber c1, complexnumber c2) return new complexnumber(c1.x + c2.x, c1.y + c2.y); public static complexnumber
6、operator -(complexnumber c1, complexnumber c2) return new complexnumber(c1.x - c2.x, c1.y - c2.y); public static complexnumber operator *(complexnumber c1, complexnumber c2) return new complexnumber(c1.x * c2.x - c1.y * c2.y, c1.y * c2.x + c1.x * c2.y); public static complexnumber operator /(complex
7、number c1, complexnumber c2) return new complexnumber(c1.x * c2.x + c1.y * c2.y) / (c2.x * c2.x + c2.y * c2.y), (c1.y * c2.x - c1.x * c2.y) / (c2.x * c2.x + c2.y * c2.y); public static bool operator =(complexnumber c1, complexnumber c2) return (c1.x = c2.x) && (c1.y = c2.y); public static bo
8、ol operator !=(complexnumber c1, complexnumber c2) return (c1.x != c2.x) | (c1.y != c2.y); public static bool operator >(complexnumber c1, complexnumber c2) double a = c1.x * c1.x + c1.y * c1.y; double b = c2.x * c2.x + c2.y * c2.y; return a > b; public static bool operator <(complexnumber
9、c1, complexnumber c2) double a = c1.x * c1.x + c1.y * c1.y; double b = c2.x * c2.x + c2.y * c2.y; return a < b; public static complexnumber operator +(complexnumber c1) return new complexnumber(c1.x+, c1.y+); public static complexnumber operator -(complexnumber c1) return new complexnumber(c1.x-,
10、 c1.y-); public override string tostring() return string.format("0+1i",this.x,this.y); 3、实验结果: (二)、第2个题目的要求:知道一个人的生日,如何计算他的年龄(严格按照周岁计算) 1、程序编程思路: 首先考虑的是怎么来计算年龄,想到用当前日期减去生日日期,用年减去年,月减去月,日减去日,然后思考,各种情况下的年龄计算方法,画出程序的流程图,根据流程图写出源程序;接着就想到如何让操作者方便的一次性将生日的年月日输入,就考虑用字符数组,然后用string类的split方法将输入的字符串劈
11、开。2、程序源码:static void main(string args) int a, b, c, d, e, f; datetime s = datetime.today; d = s.year; e = s.month; f = s.day; console.writeline("请输入您的生日(格式为0000-00-00)"); string g = console.readline(); char sep1 = '-' string h= g.split(sep1); int x = new inth.length; for (int i = 0
12、; i < h.length; i+) xi = int.parse(hi); a = d - x0; b = e - x1; c = f - x2; if (a < 0) | (a = 0 && b < 0) | (a = 0 && b = 0 && c < 0) console.writeline("您输入的生日有误!"); else if (a = 0) console.writeline("您不满一岁!"); else if (a > 0) if (b > 0) console.writeline("您今年0岁!",a); else if (b < 0) console.writeline("您今年0岁!", a - 1); else if (b = 0) if (c<0) console.writeline("您今年0岁!", a-1); else console.writeline("您今年0岁!", a); console.readline(); 3、实验结果: 三、 实验效果对第一个题目,要熟记操作符重载的方法与格式
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年犬伤暴露预防接种培训试题及答案
- TLS网络性能测试实验课程设计
- 一册吃透|八年级历史材料题暑假专项突破课件
- 暑假纠错特训|初中化学酸碱盐概念易混知识点深度辨析复习课
- AI与传统茶文化的数字化创新发展
- 2025山东威海经发投资控股集团有限公司及下属子公司市场化招聘8人笔试历年难易错考点试卷带答案解析
- 2025天津市龙网科技发展有限公司招聘9人笔试历年备考题库附带答案详解
- 2025国家能源集团清洁能源研究院有限公司系统内招聘12人笔试历年典型考点题库附带答案详解
- 2025四川长虹美菱国际区品牌运营中心招聘产品策划岗位4人笔试历年备考题库附带答案详解
- 《检测仪器设备国产化验证评价指南数字PCR仪》编制说明
- 2026年新疆第三师图木舒克市高校毕业生“三支一扶”计划招募(347人)笔试参考题库及答案详解
- 赣州文化传媒集团有限责任公司2026年公开招聘工作人员笔试参考题库及答案详解
- 广东省深圳市罗湖区2025-2026学年第二学期学业质量检测九年级英语试卷(含答案)
- 河南省南阳市2025-2026学年高一数学上学期第一次月考试题【含答案】
- GB/T 24026-2026环境标志和声明足迹信息交流的原则、要求和指南
- 2026菲律宾椰子行业市场现状供需分析及投资评估规划分析研究报告
- IT系统日常运维管理SOP文件
- T∕TAF 293-2025 物联网蜂窝模组与电信智能卡兼容性技术要求和测试方法
- 2026年全国硕士研究生招生考试政治试题及其答案
- 2026年国家职业卫生考试试题及答案
- 工程造价审计审计重点及难点分析
评论
0/150
提交评论