很简单的C++,帮我看看哪里有问题,是数组使用方面的问题

[复制链接]
查看11 | 回复5 | 2009-7-27 21:40:17 | 显示全部楼层 |阅读模式
你的month既然是个数组,那声明的时候就应该是int month[12]={31,28,31,30,31,30,31,31,30,31,30,31}; 然后if((y%4==0&&y%100!=0)||y%400==0) {leap=1; } else{leap=0;}在这里加一句:month[1]+=leap;...
回复

使用道具 举报

千问 | 2009-7-27 21:40:17 | 显示全部楼层
改成下面的:#includeusing namespace std;void main(){ int y,m,d,leap=0,sum=0,i; int month[12]={ 31,28+leap,31,30,31,30,31,31,30,31,30,31 }; cin>> y >> m >> d ;
...
回复

使用道具 举报

千问 | 2009-7-27 21:40:17 | 显示全部楼层
很多错误,这个是正确的程序,你参照着看看吧,比如scanf()函数参数等。#include void main(){ int y,m,d,leap,sum=0,i;/*变量sum需先赋初值*/ int month[12]={31,28,31,30,31,30,31,31,30,31,30,31};/*数组不能动态赋值...
回复

使用道具 举报

千问 | 2009-7-27 21:40:17 | 显示全部楼层
你的sum变量没有初始化为0呢,这个是和qbasic明显不同的地方。...
回复

使用道具 举报

千问 | 2009-7-27 21:40:17 | 显示全部楼层
leap没有赋值就使用,当然出错你应该先不赋2月的值month={31,,31,30,31,30,31,31,30,31,30,31};再输入Y之后if((y%4==0&&y%100!=0)||y%400==0) {leap=1; } else{leap=0;}这,加一句month[1]=28+leap...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行