帮忙看看 程序错在哪儿了? C++

来源:百度知道 编辑:UC知道 时间:2024/05/16 13:37:48
定义得类:
#include "iostream.h"

class Date
{
public:
void setDate(int day,int month,int year);
void showDate();
void add();
void decide();
private:
int m,d,y;int c;

}work;

这个是判断是否是闰年得函数:
void Date::decide()
{
int a,b;
do
{
a=y%4==0&&y%100!=0;
b=y%4==0&&y%100==0&&y%400==0;
if(a||b)
{c=1;cout<<"这是闰年!"<<endl;break;}
else
{c=2;cout<<"这不是闰年!"<<endl;break;}
}while(y>0);

}

错误全部在这个函数里边,高手帮帮忙!在日期上加一天!
void Date::add()
{
if(c=1&&m=2&&d=29)
{m=3;d=1;}
else if(c=0&&m=2&&d=28)
{m=3;d=1;}
else if((m=1||m=3||m=5||m=7||m=8||m=10)&&d=31)
{m=m+1;d=1;}
else if(m=12&&d=31)
{y=y+1;m=1;d=1;}
else if((m=4||m=6||m=9||m=11)&&d=30)
{m=m+1;d=1;}
else
d

大部分问题确实出现在你指出的函数中.
1 : 你的if 和else if语句里的条件书写不正确
如:if(c=1&&m=2&&d=29) 改: if(c==1&&m==2&&d==29) 等于号的问题
2 : 你还没有把这个函数showDate()写完整 所以不能直接使用 出现在这个void Date::add() 函数末尾
3 : 没有主函数void main()
我帮你改了下 希望对你有帮助

#include<iostream.h>
class Date
{
public:
void setDate(int day,int month,int year);
void showDate();
void add();
void decide();
private:
int m,d,y;int c;

}work;

//这个是判断是否是闰年得函数:
void Date::decide()
{
int a,b;
do
{
a=y%4==0&&y%100!=0;
b=y%4==0&&y%100==0&&y%400==0;
if(a||b)
{c=1;
cout<<"这是闰年!"<<endl;
break;
}
else
{c=2;
cout<<"这不是闰年!"<<endl;
break;
}
}while(y>0);

}

///错误全部在这个函数里边,高手帮帮忙!在日期上加一天!
void Date::add()
{
if(c==1&&m==2&&d==29)
{m=3;d=1;}
else if(c==0&&m==2&&d