A. 用c语言设定一个纪念日时间,输入一个日期,显示当天距离纪念日的天数。
#include "stdio.h"
#include "Windows.h"
int main() {
printf("请输入倒计时时间(例如:01:26:30):");
int hour=0, min=0, sec=0;
scanf("%d:%d:%d", &hour, &min, &sec);
if(hour>24 || hour<0 || min>60 || min<0 || sec>60 || sec<0) {
printf("输入有误!\n");
return 0;
}
printf("倒计时开始!\n");
int i, j, k;
for(i=hour; i>=0; i--) {
for(j=min; j>=0; j--) {
for(k=sec; k>=0; k--) {
printf("\r%2d:%2d:%2d", i, j, k);
Sleep(1000);
}
sec = 59;
}
min = 59;
}
exit(0);
}
B. 急求!C语言计算天数
#include<stdio.h>
int main()
{
int yyyy,mm,dd,a,b;
scanf("%d/%d/%d",&yyyy,&mm,&dd);
a=31*(mm>1)+28*(mm>2)+31*(mm>3)+30*(mm>4)+31*(mm>5)+30*(mm>6)+31*(mm>7)+31*(mm>8)+30*(mm>9)+31*(mm>10)+30*(mm>11)+dd;
b=((yyyy%4==0)*(yyyy%100!=0)+(yyyy%400==0))*(mm>2);
printf("%d\n",a+b);
return 0;
}
C. 如何用c语言来计算日期间隔天数
楼上的说的太麻烦了(真是傻瓜做法)//定义两个时间DateTime time1=Convert.ToDateTime("2006-05-23");DateTime time2=Convert.ToDateTime("2045-12-15");//计算间隔天数(精确到毫秒格式为“2222.22.22.2222”)TimeSpan span = (TimeSpan)(time2-time1);int result = Convert.ToInt32(Convert.ToString(span).SubString(0,Convert.ToString(span).IndexOf(".")));//result就是你要的天数
D. C语言中输入一个日期计算他是今年的第几天
输入年月日三个值,先累加该年之前各个月的每月天数,最后累加日期天数即可获取结果。
一、算法设计:
1、输入年月日三个值;
2、为保证程序健壮性,可以对三个值的合法性进行判断,只对合法数据进行操作;
3、累加之前各月天数;
4、累加当前日值;
5、输出结果。
二、注意点:
可以使用数组存储各个月份的天数,用循环累加。需要注意的是闰年的判断。对于闰年,2月要多加一天。
三、参考代码:
#include<stdio.h>
intmain()
{
intmdays[12]={31,28,31,30,31,30,31,31,30,31,30,31};//十二个月的天数。
inty,m,d,r=0,i;
scanf("%d%d%d",&y,&m,&d);
if(y%400==0||(y%4==0&&y%100!=0))//闰年。
mdays[1]=29;//设置闰年二月值。
if(y<0||m<=0||m>12||d<=0||d>mdays[m-1])//输入非法。
{
printf("输入年月日不合法 ");//提示并退出。
return-1;
}
for(i=0;i<m-1;i++)//累加之前各个月。
r+=mdays[i];
r+=d;//累加日期值。
printf("%d ",r);//输出结果。
return0;
}
E. 用c语言编程计算两个日期之间的天数
直接算两个日期距离公元元年1月1日的天数:
若干个完整的年,若干个完整的月,若干天,加起来之后两个天数相减就行了.
日期的合法性,闰年之类的就不罗嗦了.
F. 用c语言编写计算两个日期之间的天数
#include <time.h>
#include <stdio.h>
void main()
{
tm t1={0},t2={0};
t1.tm_year = 1999-1900;
t1.tm_mon = 2-1;
t1.tm_mday = 3;
t2.tm_year = 2015-1900;
t2.tm_mon = 5-1;
t2.tm_mday = 4;
time_t a1 = mktime(&t1);
time_t a2 = mktime(&t2);
printf("相差%d天", (a2-a1)/86400);
}
ps:看不懂了再追问
G. 如何用C语言计算日期间离天数
我学C#、Java的,对C不是很了解,仅仅提供个思路:
请问一下C有没有日期函数?有吧应该?
如果有的话,是不是能返回自1970年1月1日起到你输入的日期的毫秒数呢?
能返回的话,你输入的两个时间都换成毫秒数,一减,得到的不就是两个
日期相差的毫秒数?
然后把毫秒数换算成天数不就成了?
H. 用c语言编程计算输入出生日期可计算出到现在存活时间天数
使用time.h,首先使用mktime函数将出生日期换算成time_t,也就是秒数。然后再使用time函数获取当时时间的秒数,两者相减,就是相差的秒数,再除以一天的秒数换算成天数就可以了。
全部源码如下:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<time.h>
main()
{
intyear,mon,mday;
time_tt1,t2;
intdays;
structtmtm;
printf("Pleaseinputyear,mon,day:");
scanf("%d,%d,%d",&year,&mon,&mday);
memset(&tm,0,sizeof(tm));
tm.tm_year=year-1900;
tm.tm_mon=mon-1;
tm.tm_mday=mday;
t1=mktime(&tm);
t2=time(NULL);
days=(t2-t1)/(24*3600);
printf("%d ",days);
}
I. c语言由天数算日期
如果知道一个指定日期以及要求指定天数,以后是什么日期,可以通过计算到当月月末有几天,然后再减去接下来的一个月的天数。逐个月模拟的进行推算。
J. c语言输入年份和天数,输出月份和日期,如何写啊,各为大侠帮帮忙吧,thanks,急!!
#include<stdio.h>
int leap(int a)
{
if(a%4==0&&a%100!=0||a%400==0)
return 1;
else
return 0;
}
int numble(int year,int m,int d)
{
int sum=0,i,j,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};
if(leap(year)==1)
for(i=0;i<m-1;i++)
sum+=b[i];
else
for(i=0;i<m-1;i++)
sum+=a[i];
for(j=2000;j<year;j++)
if(leap(j)==1)
sum+=366;
else
sum+=365;
sum+=d;
return sum;
}
void main()
{
int year,month,day,n;
printf("pleass input year,month,day\n");
scanf("%d%d%d",&year,&month,&day);
n=numble(year,month,day);
if((n%5)<4&&(n%5)>0)
printf("%d%d%d is fishing\n",year,month,day);
else
printf("%d%d%d is bask\n",year,month,day);
}
/*这个是渔夫三天打鱼,两天晒网的问题。你的问题和这个差不多。你先看看能不能给你提示解决你的问题。不能的话我在把它改改。*/