/* *程序的版权和版本声明部分: *Copyright(c)2014,烟台大学计算机学院学生 *All rights reserved. *文件名称: *作者:zhaojiaxiang *完成日期:2014 年 3月 26 日 *版本号:v1.0 *对任务及求解方法的描述部分: *输入描述:无 *问题描述:四个数,分别表示矩形左下角和右上角顶点的坐标,如输入3.7 0.4 6.5 4.9,代表左下角坐标为(3.7, 0.4),右上角坐标为(6.5, 4.9)。 *程序输出: *问题分析;定义一个矩形类,数据成员包括左下角和右上角坐标,定义的成员函数包括必要的构造函数、输入坐标的函数,以及计算并输出矩形面积的函数。要求使用提示中给出的测试函数并不得改动。 *算法设计:输出一共有3行(请参考提示(hint)中的main函数): 第一行:由输入的坐标确定的矩形对象p1的面积 第二行:由对象复制得到的矩形对象p2的面积 第三行:直接初始化得到的矩形对象p3的面积 */ #include <iostream> using namespace std; class Rectangle { public: Rectangle(double a=1,double b=1,double c=1,double d=1):x1(a),y1(b),x(c),y(d){} //开始时abcd忘了赋值 结果老是不对 void input(); void output(); private: double x1; double x; double y1; double y; }; void Rectangle::input() { cin>>x1>>y1>>x>>y; } void Rectangle::output() { cout<<(x-x1)*(y-y1)<<endl; } int main() { Rectangle p1; p1.input(); p1.output(); Rectangle p2(p1); p2.output(); Rectangle p3(1,1,6,3); p3.output(); return 0; }
感悟:开始时没有给abcd赋初值,程序不对,老长时间才发现!!
原文:http://blog.csdn.net/zjx211314/article/details/22199943