c++程序设计第3版谭浩强课后答案
C++编程:定义一个结构体变量(包括年、月、日),编写程序,要求输入年月日,程序能够计算并输出改日是本年中的第几天。注意闰年问题。
以下是此题的【c++源代码】,需要【c源代码】请点击进入
源代码1:
#include <iostream>
using namespace std;
struct
{ int year;
int month;
int day;
}date;
int main()
{int days;
cout<<"input year,month,day:";
cin>>date.year>>date.month>>date.day;
switch(date.month)
{ case 1: days=date.day; break;
case 2: days=date.day+31; break;
case 3: days=date.day+59; break;
case 4: days=date.day+90; break;
case 5: days=date.day+120; break;
case 6: days=date.day+151; break;
case 7: days=date.day+181; break;
case 8: days=date.day+212; break;
case 9: days=date.day+243; break;
case 10: days=date.day+273; break;
case 11: days=date.day+304; break;
case 12: days=date.day+334; break;
}
if ((date.year %4== 0 && date.year % 100 != 0
||date.year % 400 == 0) && date.month >=3)
days+=1;
cout<<date.month<<"/"<<date.day<<" is the "<<days
<<"th day in "<<date.year<<"."<<endl;
return 0;
}
源代码2
#include <iostream>
using namespace std;
struct
{int year;
int month;
int day;
}date;
int main()
{int i,days;
int day_tab[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
cout<<"input year,month,day:";
cin>>date.year>>date.month>>date.day;
days=0;
for (i=1;i<date.month;i++)
days+=day_tab[i];
days+=date.day;
if ((date.year%4==0 && date.year%100!=0 || date.year%400==0) && date.month>=3)
days+=1;
cout<<date.month<<"/"<<date.day<<" is the "<<days
<<"th day in "<<date.year<<"."<<endl;
return 0;
}
本文链接:http://www.wb98.com/cjia/post/cjia_7.1.html
本站文章搜索: