使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序,使输入某年某月某日,可判断这一天是这一年的第几天。 程序分析:以3月5日为例,应该先把前两个月的天数加起来,然后再加上5天即本年的第几天(特殊情况:

admin2017-11-27  31

问题 使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序,使输入某年某月某日,可判断这一天是这一年的第几天。
    程序分析:以3月5日为例,应该先把前两个月的天数加起来,然后再加上5天即本年的第几天(特殊情况:闰年输入月份大于3时需考虑多加一天)。
  注意:只能补充函数func(int year,int month.int  day),请勿改动其他部分的内容。
#include
int func(int year,int month,int
day)
{
}
void main()
{
    cout<    cout<    cout<    return;
}

选项

答案int sum; int leapyear; switch(month)/*先计算某月以前月份的总天数*/ { case 1: sum=0; break; case 2: sum=31; break; case 3: sum=59; break; sase 4: sum=90; break; case 5: sum=120; break; sase 6: sum=151; break; case 7: sum=181; break; case 8: sum=212; break; case 9: sum=243; break; case 10: sum=273; break; case 11: sum=304; break; case 12: sum=334; break; default: cout<<"data error"<2) sum++; return sum;

解析 (1)为方便起见,先统计正常年份下,每个月的前面有多少天,可以用switch方式查询,然后再加上本月的日子,很快便得到了这一天是属于这一年的第几天。
(2)闰年的判断方法为:if(year%400==0‖(year%4=0&&year%100!=0)),if语句为真则为闰年,二月之后的日期后需要加一天。
转载请注明原文地址:https://kaotiyun.com/show/zDAp777K
0

最新回复(0)