回精華區
作者qazq.bbs@bbs.cs.nchu.edu.tw (ξ愛情御守ξ) 看板: plan
標題[功能] sinastar.c 使用者選單直接查詢<今日運勢>(1)
時間中興資科 (Wed, 23 Jul 2003 18:25:11 +0800 (CST)) Updated: 2003/07/23
    偷學KKcity的....呵呵~

    只能查詢今日運勢唷,如果要查詢其他的....自行修改!

------------------------------------------------------------------------------

    首先,要在站上加入 [功能] 新浪星座運勢查詢


: src/so/sinastar.c:main_sinastar()


int
main_sinastar()
{
  char sendform[256], c1, c2;

- char *star[12] =
- {
-   "aries",     "taurus",   "gemini",
-   "cancer",    "leo",      "virgo",
-   "libra",     "scorpio",  "sagittarius",
-   "capricorn", "aquarius", "pisces"
- };                                    //移出去當全域變數
  ....
  ....
}


: sinastar.c    加入下面的全域變數在 http_conn() 上面

  char *star[12] =
  {
    "aries",     "taurus",   "gemini",
    "cancer",    "leo",      "virgo",
    "libra",     "scorpio",  "sagittarius",
    "capricorn", "aquarius", "pisces"
  };




: sinastar.c:count_star()    新增在 http_conn() 下面


int                     /* qazq.030723: 算出被查詢人的星座 */
count_star(month, day)  //偷抄 topusr 的.... :p
  int month;
  int day;
{
  switch (month)
  {
  case 1:
    if (day <= 19)
      return 9;
    else
      return 10;
    break;
  case 2:
    if (day <= 18)
      return 10;
    else
      return 11;
    break;
  case 3:
    if (day <= 20)
      return 11;
    else
      return 0;
    break;
  case 4:
    if (day <= 19)
      return 0;
    else
      return 1;
    break;
  case 5:
    if (day <= 20)
      return 1;
    else
      return 2;
    break;
  case 6:
    if (day <= 21)
      return 2;
    else
      return 3;
    break;
  case 7:
    if (day <= 22)
      return 3;
    else
      return 4;
    break;
  case 8:
    if (day <= 22)
      return 4;
    else
      return 5;
    break;
  case 9:
    if (day <= 22)
      return 5;
    else
      return 6;
    break;
  case 10:
    if (day <= 23)
      return 6;
    else
      return 7;
    break;
  case 11:
    if (day <= 22)
      return 7;
    else
      return 8;
    break;
  case 12:
    if (day <= 21)
      return 8;
    else
      return 9;
    break;
  default:
    return 12;
  }
}



: sinastar.c:query_star()   新增在 count_star() 下面


int
query_star(acct)
  ACCT *acct;
{
  int acct_star;
  char sendform[256];

  acct_star = count_star(acct->month, acct->day);

  if (acct_star == 12)
  {
    vmsg("此人星座不可考,無法查詢!");
    return 0;
  }
  sprintf(sendform, "GET /west/MC-12stars/%s1.html HTTP/1.0\n\n",
                     star[acct_star]);

  http_conn(SERVER_sinastar, sendform, 0);

  return 0;
}

--
| Origin |  中興資科 中興資科 e資獨秀  bbs.cs.nchu.edu.tw 
| Author | 61-216-139-67.HINET-IP.hinet.net
精華選讀←離開[主題上]主題下(k)上篇(j)下篇S/a搜尋 G串列 TAB精華 ↑↓捲 Pg/Space翻