)定义一个结构体变量(包括年、月、日)。计算改日在本年中是第几天。注意闰年问题。麻烦注明各语句的作用
展开全部
#include <stdio.h>
struct sdate{
int year;
int mon;
int date;
};
int main()
{
int i, m, flag = 0, count = 0;//count表示在该年的第几天,flag等于1时表示闰年,0表示不是
struct sdate datenum;
scanf("%d %d %d", &datenum.year, &datenum.mon, &datenum.date);//输入年月日
m = datenum.mon - 1;
//if...else语句用来判断是否是闰年
if(datenum.year%100 == 0){
if(datenum.year%4 == 0){
flag = 1;
}
}else if(datenum.year%4 == 0){
flag = 1;
}
count = m*30+datenum.date + (m/2+m%2);//把二月当作30天,计算count
if(m >=2){
if(flag)//闰年时,二月为29天,所以要减去一天
count--;
else//不是闰年时二月为28天,减去两天
count -= 2;
}
printf("%d\n", count);
return 0;
}
struct sdate{
int year;
int mon;
int date;
};
int main()
{
int i, m, flag = 0, count = 0;//count表示在该年的第几天,flag等于1时表示闰年,0表示不是
struct sdate datenum;
scanf("%d %d %d", &datenum.year, &datenum.mon, &datenum.date);//输入年月日
m = datenum.mon - 1;
//if...else语句用来判断是否是闰年
if(datenum.year%100 == 0){
if(datenum.year%4 == 0){
flag = 1;
}
}else if(datenum.year%4 == 0){
flag = 1;
}
count = m*30+datenum.date + (m/2+m%2);//把二月当作30天,计算count
if(m >=2){
if(flag)//闰年时,二月为29天,所以要减去一天
count--;
else//不是闰年时二月为28天,减去两天
count -= 2;
}
printf("%d\n", count);
return 0;
}
来自:求助得到的回答
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |