C++实验题---填空(运算符重载)

             

                                                                     C++实验题---填空(运算符重载)

时间限制(普通/Java):1000MS/3000MS          运行内存限制:65536KByte
总提交:294            测试通过:213

描述

仔细阅读以下程序,理解程序的主要功能,正确补充空白处的语句,空白处可能是一条语句或多条语句,也可能是一个表达式,严禁改动给出程序代码的段落、修改、移动、注释掉给出的程序代码,若有改动、修改或注释掉给出程序的任何一处该题记0分。并编译运行测试通过后进行提交,否则提交错一次扣1分,扣完为止。


#include <iostream>
using namespace std;
class Point
{
 private:
  int x,y;
 public:
  Point(int x=0, int y=0):x(x),y(y){}
  Point &operator ++();
  friend Point operator ++(Point &p,int);
  void print(){cout<<"X="<<x<<",Y="<<y<<endl;}
 
};
____________________
{  
 x++; y++;
 ____________________

}

____________________ 

{
    ____________________ 

 pt.x++;
 ____________________ 
 
 return pt;
}
int main()
{
 int m;
 while(cin>>m)
 {
 Point p1(m,m),p2(m+1,m+1),p3;
 (++p1).print();
 p3 = p2++;
 p3.print();
 p2.print();
 }
 return 0;
}

输入

输入有多组测试数据,每行为一组测试数据,且只有一个正整数。

输出

根据程序代码输出相应的信息。

样例输入

1
2
3

样例输出

X=2,Y=2
X=3,Y=3
X=2,Y=2
X=3,Y=3
X=4,Y=4
X=3,Y=3
X=4,Y=4
X=5,Y=5
X=4,Y=4
#include <iostream>
using namespace std;
class Point
{
private:
    int x,y;
public:
    Point(int x=0, int y=0):x(x),y(y) {}
    Point operator ++();
    friend Point operator ++(Point &p,int);
    void print()
    {
        cout<<"X="<<x<<",Y="<<y<<endl;
    }
};
Point Point::operator ++()
{   
    x++;
    y++;
    return *this;
}
 Point operator ++(Point &p,int)
{
   Point pt=p;
    pt.x++;
   pt.y++;
    return pt;
} int main()
{
    int m;
    while(cin>>m)
    {
        Point p1(m,m),p2(m+1,m+1),p3;
        (++p1).print();
        p3 = p2++;
        p3.print();
        p2.print();
    }
    return 0;
}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值