小白Harvey 2021-11-09 17:56 采纳率: 100%
浏览 33
已结题

【c++日期加减】日期没结果,请教错哪了


class Date
{
public:
    int Isleapyear();
    void Print();
    Date()                            //不带参数的构造函数
    {
        year = 2007;
        month = 12;
        day = 31;
    }
    Date(int y,int m,int d);
    private:
    int year,month,day;
};
class Newdate:public Date
{
public:
    void show();
    Newdate(int y,int m,int d):Date(y,m,d) 
    {
        int n;
        cout<<"加多少天: "<<endl;
        cin>>n; 
        int a[13];
        if(Isleapyear()){
        int a[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};}
        else{
        int a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};}
        
        num=n+d;
        while(a[m]<num)
        {
        num=num-a[m];
        if(m==12)
            {
                y++;
                m=0; 
            }     
            m++;
        }
        newd=num; 
        newy=y;
        newm=m;
}
private:
    int newy,newm,newd,num;
    
};



int Date::Isleapyear()
{
    return(year%4==0 && year%100!=0)||(year%400==0);
}

void Date::Print()
{
    cout<<year<<"/"<<month<<"/"<<day<<endl;
}

Date::Date(int y,int m,int d)
    {
        year=y;
        month=m;
        day=d;
    }


void Newdate:: show()
    {
    cout<<newy<<"/"<<newm<<"/"<<newd<<endl;    
    }
    


void main()
{    int y,m,d; 
    cout<<"请输入年月日: "<<endl;
    cin>>y>>m>>d;
    Date today(y,m,d);
    Newdate new_date(y,m,d);
    today.Print(); 
    new_date.show();

}

img

  • 写回答

1条回答 默认 最新

  • qllaoda 2021-11-09 17:57
    关注

    看错误提示啊

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 11月11日
  • 已采纳回答 11月11日
  • 修改了问题 11月9日
  • 修改了问题 11月9日
  • 展开全部

悬赏问题

  • ¥15 使用sql语句实现下面两个实验(需要代码和运行结果截图)
  • ¥20 用web解决,要给我一个完整的网页,符合上述的要求
  • ¥20 求个sql代码和结果的图 两道题
  • ¥15 银河麒麟操作系统无法使用U盘
  • ¥100 寻找:光电二极管电路设计服务
  • ¥15 YOLOv5改进后的结构图
  • ¥15 全志v3s怎么设置高速时钟,使用的荔枝派zero开发板,串口2需要921600的波特率
  • ¥15 关于#单片机#的问题:Lora通讯模块hc-14电路图求内部原理图
  • ¥50 esp32 wroom 32e 芯片解锁
  • ¥15 bywave配置文件写入失败