(1)运用swicth语句
#include<iostream>
using namespace std;
int main()
{
int y,m,d;
int d1;
int sum=0,sum1=0;
cout<<"please input year,month,day: "<<endl;
cin>>y>>m>>d;
if(((y%4==0)&&(y%100!=0))||(y%400==0))
{
for(int i=1;i<m;i++)
{
switch(i)
{
case 12: d1=31;break;//注意,这里是赋值,而不是判断(不要写成“==”)
case 11: d1=30;break;
case 10: d1=31;break;
case 9: d1=30;break;
case 8: d1=31;break;
case 7: d1=31;break;
case 6: d1=30;break;
case 5: d1=31;break;
case 4: d1=30;break;
case 3: d1=31;break;
case 2: d1=29;break;
case 1: d1=31;break;
default: break;
}
sum1+=d1;
}
sum=sum1+d;
}else
{
for(int j=1;j<m;j++)
{
switch(j)
{
case 12: d1=31;break;
case 11: d1=30;break;
case 10: d1=31;break;
case 9: d1=30;break;
case 8: d1=31;break;
case 7: d1=31;break;
case 6: d1=30;break;
case 5: d1=31;break;
case 4: d1=30;break;
case 3: d1=31;break;
case 2: d1=28;break;
case 1: d1=31;break;
default: break;
}
sum1+=d1;
}
sum=sum1+d;
}
cout<<"this is the "<<sum<<" day of the "<<y<<endl;
return 0;
}
(2)运用数组
#include<iostream>
using namespace std;
int main()
{
int y,m,d;
int a[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int d1;
int sum=0,sum1=0;
cout<<"please input year,month,day: "<<endl;
cin>>y>>m>>d;
if((y%4==0)&&(y%100!=0)||(y%400==0))
{
a[2]+=1;
for(int i=1;i<m;i++)
{
sum1+=a[i];
}
sum=sum1+d;
}else
{
for(int j=1;j<m;j++)
{
sum1+=a[j];
}
sum=sum1+d;
}
cout<<"this is the "<<sum<<" day of the "<<y<<endl;
return 0;
}