首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

计算输入日期在一年中第几天的有关问题

2012-03-17 
计算输入日期在一年中第几天的问题#includeiostreamusingnamespacestdintget_date(intyy,intmm,intdd){

计算输入日期在一年中第几天的问题
#include   <iostream>
using   namespace   std;
int   get_date(int   yy,int   mm,int   dd)
{
int   yy,mm,dd;
cout < < "Input   the   date: "\n ";
cin> > yy> > mm> > dd;
return;
}
void   diplay_runnian(int   mm,int   dd)   //定义闰年计算方法
{
int   Total;
switch(int   mm)
{
case   12:
Total=335+dd;
break;
case   11:
Total=305+dd;
break;
case   10:
Total=274+dd;
break;
case   9:
Total=223+dd;
break;
case   8:
Total=212+dd;
break;
case   7:
Total=181+dd;
break;
case   6:
Total=151+dd;
break;
case   5:
Total=120+dd;
break;
case   4:
Total=90+dd;
break;
case   3:
Total=59+dd;
break;
case   2:
Total=31+dd;
break;
case   1:
Total=dd;
break;
  cout < <Total;
}
}

void   diplay_feirunnian(int   mm,int   dd)//定义非闰年计算方法
{
int   Total;
switch(int   mm)
{
case   12:
Total=334+dd;
break;
case   11:
Total=304+dd;
break;
case   10:
Total=273+dd;
break;
case   9:
Total=222+dd;
break;
case   8:
Total=211+dd;
break;
case   7:
Total=180+dd;
break;
case   6:
Total=150+dd;
break;
case   5:
Total=119+dd;
break;
case   4:
Total=89+dd;
break;
case   3:
Total=60+dd;
break;
case   2:
Total=31+dd;
break;
case   1:
Total=dd;
break;
  cout < <Total;
}
}

int   main()
{
get_date();
if(((yy/4==0)&&(yy/100!=0)||(yy/400==0))
dispay_runnian();
else
display_feirunnian();
return   0;
}
这个是我今天想了很久写的,水平有限,不知道到底怎么错了
比较简单的实现计算输入日期,要求计算它是这一年第几天的问题。

[解决办法]
#include <iostream>
using namespace std;
int yy,mm,dd;
int get_date( )
{

cout < < "Input the date:\n ";
cin> > yy> > mm> > dd;
//return;
}
void display_runnian() //定义闰年计算方法
{
int Total;
switch(mm)
{
case 12:
Total=335+dd;
break;
case 11:
Total=305+dd;
break;
case 10:
Total=274+dd;
break;
case 9:
Total=223+dd;
break;
case 8:
Total=212+dd;
break;
case 7:
Total=181+dd;
break;
case 6:
Total=151+dd;
break;
case 5:
Total=120+dd;
break;
case 4:
Total=90+dd;
break;
case 3:
Total=59+dd;
break;
case 2:
Total=31+dd;
break;
case 1:
Total=dd;
break;

}
cout < <Total;
}

void display_feirunnian()//定义非闰年计算方法
{
int Total;
switch( mm)
{
case 12:
Total=334+dd;
break;
case 11:
Total=304+dd;
break;
case 10:
Total=273+dd;
break;
case 9:
Total=222+dd;
break;
case 8:
Total=211+dd;


break;
case 7:
Total=180+dd;
break;
case 6:
Total=150+dd;
break;
case 5:
Total=119+dd;
break;
case 4:
Total=89+dd;
break;
case 3:
Total=60+dd;
break;
case 2:
Total=31+dd;
break;
case 1:
Total=dd;
break;

}
cout < <Total;
}

int main()
{
get_date();
if( (yy/4==0)&&(yy/100!=0)||(yy/400==0))
display_runnian();
else
display_feirunnian();
return 0;


}
---------------------------------------------------
错误多的我都懒得一个个指出了
自己看吧
按照你的思路改了下
gcc下运行成功
[解决办法]
int a[12]={31,28,31,30,31,30,31,31,30,31,30,31}
int b[12]={31,29,31,30,31,30,31,31,30,31,30,31}
[解决办法]
cout < <Total;
应放在
switch(int mm)
{
}
外面

热点排行