实验三_类和对象_()
实验报告
课程名称
C#可视化程序设计
实验名称
实验三、类和对象
日期
2013.10.15
学生学号
Z12055139
姓名
XXX
班级
Z120551
实验目的:
通过本次实验,要求学生能进一步掌握类和对象的概念,熟练定义类及类的各种成员的方法。
实验条件:
电脑一台、能上网查阅资料。
实验内容与步骤:
1.实验内容一
(1)要求
{
returnnewComplexNumber(c1.x + c2.x, c1.y + c2.y);
}
publicstaticComplexNumberoperator-(ComplexNumberc1,ComplexNumberc2)
{
returnnewComplexNumber(c1.x - c2.x, c1.y - c2.y);
定义完整的ComplexNuber类,在其中重载加减乘等基本算术操作符,相等和不等操作符(比较复数的实部和虚部是否均相等),以及大小比较操作符(比较复数模的大小)。
(2)源代码
控制台应用程序:
usingComplexNumber;
namespaceqiao
{
classProgram
{
staticvoidMain(string[] args)
{
inta =9;
intb=8;
Console.WriteLine(a+b);
Console.WriteLine(a - b);
Console.WriteLine(a * b);
if(a == b)
{
Console.Write(a);Console.Write("=");Console.Write(b);
{
doublea = c1.x * c1.x + c1.y * c1.y;
doubleb = c2.x * c2.x + c2.y * c2.y;
returna > b;
}
publicstaticbooloperator>=(ComplexNumberc1,ComplexNumberc2)
{
returnc1 == c2 || c1 > c2;
}
else
{
Console.Write(a);Console.Write("!=");Console.Write(b);
}
Console.Read();
}
}
}
类库:
namespaceComplexNumber
{
publicclassComplexNumber
{
privatedoublex, y;
publicdoubleX
}
}
}
(3)实验结果
实验总结(结论或问题分析):
刚开始在类库中直接写程序后,没有看清楚就把类库设置成了启动项,运行显示的结果是 思考一下之后添加一个控制台应用程序这样可以运行了,刚开始把输出结果设置成了bool类型运行结果如下:
后来变成if语句直接输出结果9!8显得更直观一些。通过这次实验掌握类和对象的基本概念,可以定义类及类的各种成员的方法。但在实验中也出现了不少的错误,经过认真思考以及求助同学才把问题解决,从中学到不少东西,以后敲程序的时候一定会加倍细心。本次试验涉及到的运算符重载的知识不是很扎实以后要认真看看。
{
return(c1.x == c2.x) && (c1.y == c2.y);
}
publicstaticbooloperator!=(ComplexNumberc1,ComplexNumberc2)
{
return(c1.x != c2.x) || (c1.y != c2.y);
}
publicstaticbooloperator>(ComplexNumberc1,ComplexNumberc2)
{
get{returnx; }
set{ x =value; }
}
publicdoubleY
{
get{returny; }
set{ y =value; }
}
publicComplexNumber(doublex,doubley)
{
this.x = x;
thislexNumberoperator+(ComplexNumberc1,ComplexNumberc2)
}
publicstaticComplexNumberoperator*(ComplexNumberc1,ComplexNumberc2)
{
returnnewComplexNumber(c1.x* c2.x, c1.y * c2.y);
}
publicstaticbooloperator==(ComplexNumberc1,ComplexNumberc2)
实验成绩
任课教师签名
郭俊恩
}
publicstaticbooloperator<(ComplexNumberc1,ComplexNumberc2)
{
return!(c1 >= c2);
}
publicstaticbooloperator<=(ComplexNumberc1,ComplexNumberc2)
{
return!(c1 > c2);