i小于month-1是什么意思,还有sum=days
追答sum=0;
for(i=0,i<month-1;i++)
sum+=days[i];
这一段是统计整数月,比如你输入2月1日,就是统计days数组中days[0],也就是一月的天数。31天。
sum+=(day-1);
这一句是统计零头,比如你输入2月2日,就是2-1,在上面的基础上加一天的零头。
days数组是存放每月有多少天,下标从0开始,所以前面需要减1.
每月从1号开始,不是从0开始,所以也需要减1.
sum+=daysi是什么意思
追答sum=sum+days[i]的简写。就是在sum的基础上加上days[i]。
比如你输入3月2日,循环里面就是0+31+28,最后再+(2-1)。
for(i=0,i<month-1;i++)
sum+=days[i];
sum+=(day-1);
也是简写。
应该是
for(i=0,i<month-1;i++)
{
sum+=days[i];
}
sum+=(day-1);
for如果只管一句的话可以省略大括号。
为什么是daysi
追答days[12]={31,28,31,30,31,30,31,30,31,30,31,30};
前面定义过的,每个月含有多少天。days[0]对应一月份,...days[11]对应12月份
for(i=0,i<month-1;i++)是指从1月份开始统计,一直到你输入的月份为止。
你输入2月份,那么只需要统计1月份就可以了,所以是month-1。
你可以问详细点。
wl为什么是i小于我不明白
追答你是说为什么不是i小于等于?换种写法你估计看得清楚一点。
for(i=1,i<=month-1;i++)
{
sum+=days[i-1];
}
这个i就真正是月份的意思了。
以前那个i是数组下标的意思,实现的效果是一样的。
每月含多少天写错了,修改一下:
int days[12]={31,28,31,30,31,30,31,31,30,31,30,31};
怎么打出来
本回答被提问者采纳