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);
}
/*這個是漁夫三天打魚,兩天曬網的問題。你的問題和這個差不多。你先看看能不能給你提示解決你的問題。不能的話我在把它改改。*/