作者gene07 (不要迷戀哥,哥只是個傳說)
看板C_and_CPP
標題[問題] 萬年歷的一種作法..
時間Mon Oct 19 22:07:49 2009
通常..寫萬年歷不是都用陣列嗎??
這是我寫的上半部宣告
#include<stdio.h>
#include<math.h>
int main()
{int year;
printf( "輸入年份:" );
fflush(stdout);
scanf("%d", &year);
int month[]={31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
int num, first_day;
first_day = (1+(year-1)+(year-1)/4-(year-1)/100+(year-1)/400)%7;
if ( (year%4==0 && year%100!=0) || year%400==0 )
month[1] = 29;
想說...如果不用陣列改用if來計算...
這樣不是要用12個if來跑嗎??
如果又碰到閏年..這樣不是就有13個if...
那如果用if宣告..該怎麼表示阿..我不懂= =..
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.229.65.180
→ cooper6334:你可以用switch case 10/19 22:09
→ gene07:感覺用switch case跟if的步驟都一樣多阿=..= 10/19 22:12
推 VictorTom:看這個code, else的時候記得把month[1]改回28....XD 10/19 22:12
→ gene07:只是不用一樣要把每個月都單獨抓出來寫條件Q_Q" 10/19 22:12
→ gene07: 還是要 10/19 22:13
→ MOONRAKER:並不一樣多。 10/19 22:38
→ MOONRAKER:不要用「感覺」的。 10/19 22:38