| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 250 人关注过本帖
标题:求一天是该年中的第几天
只看楼主 加入收藏
野郎中
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2007-10-15
收藏
 问题点数:0 回复次数:2 
求一天是该年中的第几天

#include<iostream>
using namespace std;
void main()
{
int i,year,month,day,mdays[]={31,28,31,30,31,30,31,31,30,31,30,31},sum=0;
cout<<"请输入年、月、日:"<<endl;
cin>>year>>month>>day;

//对闰年的处理
if(year%4==0&&(year%100!=0||year%400==0))
sum+=1;
for(i=0;i<month-1;i++)
sum+=mdays[i];

cout<<year<<"年"<<month<<"月"<<day<<"日是"<<year<<"年的第"<<sum+day<<"天。"<<endl;
}

2007-10-15 22:57
dingpin
Rank: 1
等 级:新手上路
帖 子:281
专家分:0
注 册:2007-9-29
收藏
得分:0 

也可以不用把每个月的天数定义到一个数组里面
我是这样写的.....
#include <stdio.h>
void main()
{
int day,month,year,sum,leap;
printf("\n请输入日期(年月日):\n");
scanf("%d,%d,%d",&year,&month,&day);//如:1986,11,27 格式不要弄错
switch(month)
{
case 1:sum=0;break;
case 2:sum=31;break;
case 3:sum=59;break;
case 4:sum=90;break;
case 5:sum=120;break;
case 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:
printf("请输入正确的日期:\n");
}
sum=sum+day;
if(year%400==0||(year%4==0&&year%100!=0))
leap=1;
else
leap=0;
if(leap==1&&month>2)
sum++;
printf("这天是今年的第%d天.\n",sum);
}


我的地盘我做主!
2007-10-15 23:21
dz86102
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2007-10-16
收藏
得分:0 
是这样吗

2007-10-16 00:26
快速回复:求一天是该年中的第几天
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011297 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved