當前位置:首頁 » 編程軟體 » hbd編程

hbd編程

發布時間: 2023-08-10 12:38:01

⑴ 初學者請教 兩道簡單的c語言編程題目

[回答]
1. 用C語頃春言自己的時間函數
difftime(time_t time1, time_t time0) / 86400
這樣做得缺點是,這里的time_t類型,只支持到2037年

2. 自己定義函數
樓主用的方法,在實際編程里不常用,變化比較大。
下面這個方法是直接計算兩個日期到公元元年的天數
然後相減,這個是實際編程時的演算法,經過很多程序員的洗煉,已經被廣泛使用

#include<stdio.h>
#define LEAP(y) (y%(y%100?4:400)==0) /*公元y年是否閏年*/
long totaldays(int year,int month,int day)/*公元紀年的總天數*/此汪
{ int days[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int c=day,m,y=year-1;
days[2]=28+LEAP(year);
for(m=1;m<month;m++)c+=days[m];
return c+y/4-y/100+y/400+y*365L;
}
void main()
{ int y,m,d; long t1,t2;
printf("date 1: ");
scanf("%d%*c%d%*c%d",&y,&m,&d);
t1=totaldays(y,m,d);
printf("date 2: ");
scanf("%d%*c%d%*c%d",&y,&m,&d);
t2=totaldays(y,m,d);
printf("total days: %ld\n",t2-t1);
}

這應該是全部的實現方法了
樓主的方法沒必要簡化了
尤其是刻意追求短代碼就更沒有必要了
要知道雀扒耐,代碼短了,可讀性就差
兩者協調好,才能稱為好程序^^

悉雨辰寂

熱點內容
安卓手機為什麼最新微信安裝不了 發布:2025-02-05 02:31:03 瀏覽:106
安卓手機什麼時候開售 發布:2025-02-05 02:14:15 瀏覽:660
編程車模型 發布:2025-02-05 02:09:55 瀏覽:680
雅馬哈天劍哪個配置好 發布:2025-02-05 02:00:35 瀏覽:170
我的世界國際服推薦118伺服器 發布:2025-02-05 01:50:48 瀏覽:46
普通電腦做伺服器怎麼操作 發布:2025-02-05 01:46:22 瀏覽:628
原神為什麼同伺服器加不起好友 發布:2025-02-05 01:41:03 瀏覽:337
android連接列印機 發布:2025-02-05 01:40:09 瀏覽:959
外國電腦代理伺服器地址埠 發布:2025-02-05 01:38:30 瀏覽:387
德意龍滑鼠宏怎麼配置 發布:2025-02-05 01:34:13 瀏覽:318