回精華區
作者BioStar.bbs@micro.bio.ncue.edu.tw (澎湖小雲雀) 看板: plan
標題[閒聊] 對於出生日期更嚴謹的檢查
時間擎天崗 (Mon, 21 Jul 2003 07:19:55 +0800 (CST)) Updated: 2003/07/21
剛才看到標準板內的出生日期檢查法......
只檢查是否超過 31 天...  會不會太"陽春"啦...
還有大小月之別呢...  二月還有平閏年的差別...

小弟加了一些程式碼...  做更詳細的檢查...

: maple/acct.c:acct_setup()

  ACCT x;
  int i, num;
  char *str, buf[80], pass[PSWDLEN + 1];
+ int mmday[12] = {31, 28, 31, 30, 31, 30,
+                  31, 31, 30, 31, 30, 31}; /* 每個月的天數 */

: maple/acct:acct_setup()

+ /* 平閏年的判別 */
+ if (((x.year + 1911) % 400 == 0) ||
+   ((x.year + 1911) % 100 != 0 && (x.year + 1911) % 4 == 0))
+   mmday[1] = 29;

  do
  {
    sprintf(buf, "生日- %02d 日:", u->day);
    if (!vget(i, 0, buf, buf, 3, DOECHO))
      break;
    x.day = atoi(buf);
- } while (x.day < 1 || x.day > 31);
+ } while (x.day < 1 || x.day > mmday[x.month - 1]);

--
╔════════╗時間已做了選擇  什麼人叫做朋友  偶而碰頭  心情卻能一點就通
---─ ▂▃因為我們曾有過  理想類似的生活 太多感受 絕非三言兩語能形容
╱│╲      ▂▁可能有時我們顧慮太多  太多決定需要我們去選擇
◢◣ ◢◣   擔心會犯錯  難免會受挫  幸好一路上有你陪我      ●   ●
◢██◣    ◢◣與你分享的快樂  勝過獨自擁有  至今我仍深深感動╯ /
        ◢◣    好友如同一扇窗  能讓視野不同                    //    \\

--
| Origin |  彰化師大生物系 吟風‧眺月‧擎天崗  micro.bio.ncue.edu.tw 
| Author | 163.23.212.99
精華選讀←離開[主題上]主題下(k)上篇(j)下篇S/a搜尋 G串列 TAB精華 ↑↓捲 Pg/Space翻