伊莉討論區

標題: 幫幫我,並且告訴我哪裡錯了 [打印本頁]

作者: 712718    時間: 2012-4-8 09:36 PM     標題: 幫幫我,並且告訴我哪裡錯了

幫幫我,並且告訴我哪裡錯了

作者: kism19784    時間: 2012-4-8 11:29 PM

http://codepad.org/z8KTHPIB

看一下後面有// 的地方大概就知道了
作者: 滄浪水    時間: 2012-4-8 11:39 PM

本帖最後由 滄浪水 於 2012-4-8 11:48 PM 編輯

最主要是
a->next = b; b->next = c; 這兩行你都寫成 == 了
另外遍歷 linked list 的方法也有問題
while 這裡幫你改一下
從你程式寫的方式 linked list 概念你可還不是很清楚
可以的話再翻翻書吧
  1. int main ()
  2. {
  3.     struct  circle {
  4.                 int x, y;
  5.                 int index;
  6.                 int radius;
  7.                 struct circle *next;
  8.           };

  9.         struct circle *a, *b, *c, *current;

  10.          a = (struct circle *)malloc(sizeof(struct circle));
  11.          a->index = 1;
  12.         print f("請輸入第一個圓的圓心(x, y): ");
  13.         scanf("%d %d", &a->x, &a->y);
  14.         print f("請輸入第一個圓的半徑: ");
  15.          scanf("%d", &a->radius);
  16.         a->next = NULL;

  17.         b = (struct circle *)malloc(sizeof(struct circle));
  18.         b->index = 2;
  19.         print f("請輸入第二個圓的圓心(x, y): ");
  20.         scanf("%d %d", &b->x, &b->y);
  21.         print f("請輸入第二個圓的半徑: ");
  22.          scanf("%d", &b->radius);
  23.         b->next = NULL;
  24.         a->next = b;

  25.         c = (struct circle *)malloc(sizeof(struct circle));
  26.         c->index = 3;
  27.         print f("請輸入第三個圓的圓心(x, y): ");
  28.         scanf("%d %d", &c->x, &c->y);
  29.         print f("請輸入第三個圓的半徑: ");
  30.          scanf("%d", &c->radius);
  31.         c->next = NULL;
  32.         b->next = c;

  33.         current = a;
  34.     do
  35.         {
  36.         print f("第%d個圓的圓心為(%d, %d), 半徑為%d\n",
  37.             current->index, current->x, current->y, current->radius);
  38.           current = current->next;

  39.         }while (current != NULL);
  40.          free(a);
  41.           free(b);
  42.          free(c);
  43.         system("PAUSE");
  44.     return 0;
  45. }
複製代碼

作者: 712718    時間: 2012-4-9 09:51 PM

滄浪水 發表於 2012-4-8 11:39 PM
最主要是
a->next = b; b->next = c; 這兩行你都寫成 == 了
另外遍歷 linked list 的方法也有問題

謝謝..因為我是初學者,在學第二專長..目前正在準備考證照中...再次感溫
作者: 712718    時間: 2012-4-9 09:52 PM

kism19784 發表於 2012-4-8 11:29 PM
http://codepad.org/z8KTHPIB

看一下後面有// 的地方大概就知道了

謝謝,目前我在準備考證照中,再次感溫




歡迎光臨 伊莉討論區 (http://a401.file-static.com/) Powered by Discuz!