c++编程:输入某年某月某日,判断这一天是这一年的第几天?

 我来答
百度网友c19c0d0
2011-06-21 · TA获得超过1537个赞
知道小有建树答主
回答量:464
采纳率:0%
帮助的人:451万
展开全部
#include <iostream>
using namespace std;
int isleap(int y)
{
if( (y%4==0 && y%100!=0)|| y%400==0 )
return 1;
else
return 0;
}
int main()
{
int i,a[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int y,m,d;
int days;
cin>>y>>m>>d;
days=d;
for(i=1;i<m;i++)
days+=a[i];

if(isleap(y) && m>2)
days++;

cout<<days<<endl;
}
//验证过 无错误。。
//在线,哪里有问题可以H i我。。。
lijm1989
2011-06-20 · TA获得超过401个赞
知道小有建树答主
回答量:158
采纳率:0%
帮助的人:220万
展开全部
#include<iostream>
using namespace std;
int main()
{
int nian,yue,ri,leap,sum;
printf("\n 请输入年 月 日: \n");
cin>>nian>>yue>>ri;
switch(yue)
{
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 数据错误 \n");
}
sum=sum+ri;
if((nian%400==0) || (nian%4==0 && nian%100!=0 )
leap=1;
else
leap=0;
if(leap==1 && nian>3)
sum++;
cout<<"\n 这一天是这一年的第"<<sum<<"天。"<<endl;
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
QitianAAA
2011-06-21 · TA获得超过366个赞
知道小有建树答主
回答量:189
采纳率:0%
帮助的人:260万
展开全部
#include /* 此头函数请不要删除 */

#include
int main()
{
int days[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int i,j,k,y,m,d,b,n,sum;
while(scanf("%d/%d/%d",&y,&m,&d)!=EOF)/*日期输入格式:2010/6/9*/
{
sum=0;
for(i=1;i<m;i++)
sum=sum+days[i];
sum=sum+d;
if((y%4==0||(y%400==0&&y%100!=0)) &&m>2)
sum=sum+1;
printf("%d\n",sum);
}
return 0;

getch(); /* 此语句请不要删除*/
}

简易流程图:
开始
建立数组存放12个月的各个天数
从键盘输入日期例如:1996/3/1
对输入月份以前的所有月的天数累加——sum
再加上输入的天数
判断是否为闰年
如果是 sum+1
如果不是 sum保持不变
输出“一年的第几天”
结束
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式