Percy-HZY 2021-06-15 17:33 采纳率: 100%
浏览 16
已采纳

if(final.isLeap()==1)为什么输出值一直不变?

#include<iostream>
using namespace std;
class DDate{
	private:
		int year;
		int month;
		int day;
	public:		DDate(int a,int b,int c): year(a),month(b),day(c){
			
		}
		int isLeap();
}; 
int DDate::isLeap(){
	int ret;
	if(year%4==0&&year%100!=0||year%400==0){
		ret = 1;
	}else{
		ret = 0;
	}
		return ret;
}
int main(){
	int year;
	int month;
	int day;
	DDate final(year,month,day);
	cin>>year>>month>>day;
	int x;
	if(final.isLeap()==1){
		cout<<"yes"<<endl;
	}else{
		cout<<"no"<<endl;
	}
	return 0;
}
  • 写回答

1条回答 默认 最新

  • Clarence Liu 2021-06-15 17:53
    关注

    因为你的构造函数赋值是在输入之前进行的

    应该写成

    	cin>>year>>month>>day;	
    	DDate final(year,month,day);
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥200 csgo2的viewmatrix值是否还有别的获取方式
  • ¥15 Stable Diffusion,用Ebsynth utility在视频选帧图重绘,第一步报错,蒙版和帧图没法生成,怎么处理啊
  • ¥15 请把下列每一行代码完整地读懂并注释出来
  • ¥15 pycharm运行main文件,显示没有conda环境
  • ¥15 易优eyoucms关于二级栏目调用的问题
  • ¥15 寻找公式识别开发,自动识别整页文档、图像公式的软件
  • ¥15 为什么eclipse不能再下载了?
  • ¥15 编辑cmake lists 明明写了project项目名,但是还是报错怎么回事
  • ¥15 关于#计算机视觉#的问题:求一份高质量桥梁多病害数据集
  • ¥15 特定网页无法访问,已排除网页问题