[問題] 有關怪手搬磚頭的問題

看板C_and_CPP作者 (崩壞柴刀)時間15年前 (2010/04/01 00:25), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/1
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 ) ( 未必需要依照此格式,文章條理清楚即可 ) 遇到的問題:怪手搬磚塊執行錯誤 希望得到的正確結果:就是假設有9個位置1~9,有九個數字一開始分別都放在 1~9的位置,可以先輸入x,指定要搬的數字,               然後輸入Y指定搬到的目的地               EX: 1:1 2:2 3:3 4:4 5:5 6:6 7:7 8:8 9:9 輸入X=1 輸入Y=2 輸出變成 1: 2:21 3:3 4:4 5:5 6:6 7:7 8:8 9:9 類似這樣 程式跑出來的錯誤結果:我一開始未排序前輸出是正確的,但是輸入                X和Y要移動的時候,就產生錯誤跳出去了。 開發平台:Dev-C++ 有問題的code: if(y>0&&y<10) { cout<<"請輸入目的地:"; cin>>z; search1=&number[y-1]; search2=&head[z-1]; a=search2; for(int f=0;f<9;f++) { r=&head[f]; while(r!=NULL||r!=search1) { search3=r; r=r->getp(); } if(r==search1) { search3->setp(c); f=9; } if(r==NULL) { } } a=search2; while(a!=NULL) { search2=a; a=a->getp(); } search2->setp(&number[y-1]); search2=&head[z-1]; } 補充說明:我應該是排序的地方出了問題,我打算用串列來寫這個          應該說這是作業,目前學到類別,然後在裡面放指標,          所以我一開始就想到這樣做,可是我不管怎麼檢查就是找不出          是哪邊出了問題才來請求協助QQ          第一次發文,只要我有看到說發文有問題就會趕快回答的! 完整原始碼:http://tinyurl.com/ybfvx2b -- 喜歡花的人, ╱ 愛花的人, 會把花摘走。 ╱ 會幫花澆水。 ∴∵∴∵ φkcetair ■╯ *** * ∴∵∴∕□ ˇˇˇˇˇˇ ˇˇ ╯﹨ ˇ ˇˇˇ ˇ ˇ ˇˇ ˇˇ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 124.11.64.56

04/02 09:22, , 1F
你確定這是串列嗎?囧
04/02 09:22, 1F
文章代碼(AID): #1BitUK7y (C_and_CPP)