c语言 输入年月日到-1结束,.用C语言表示输入一个年月日,求这天在这一年中过了多少天,还剩下多少天...

C有一套日期函数的,如

#include

#include

int main()

{

struct tm tm_;

const struct tm *tmp;

int y,m,d;

time_t t;

printf("请输入日期(用-号分隔):\n");

scanf("%d-%d-%d",&y,&m,&d);

tm_.tm_year  = y-1900; //年

tm_.tm_mon   = m-1; //月

tm_.tm_mday  = d; //日

tm_.tm_hour  = 0; //时

tm_.tm_min   = 0; //分

tm_.tm_sec   = 0; //秒

tm_.tm_isdst = 0;  //夏令时

t=mktime(&tm_); //生成时间

tmp=localtime(&t); //转换格式

printf("%d-%d-%d为本年第%d天\n",y,m,d,tmp->tm_yday+1); //tm_yday从0开始的

return 0;

}

而还剩下多少天有两个方法

一是同样的,求当年的12月21日是该年的多少天,然后减上面的就是剩下的天数

二是判闰年,然后用365或366减上面的就是剩下的天数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值