[問題] 雞兔問題

看板C_and_CPP (C/C++)作者 (你好嗎 我很好)時間16年前 (2009/08/28 11:58), 編輯推噓2(2010)
留言12則, 3人參與, 最新討論串1/1
#include <stdio.h> #include <stdlib.h> int main() { int i=0,num=0,rabbit=0,chicken=0; printf("please input how many legs :"); scanf("%d ",&num); rabbit = num / 4; chicken = (num - rabbit*4) / 2; do { printf("have %d rabbit and %d chicken",rabbit,chicken); rabbit--; }while (rabbit == 0); system("pause"); return 0; } 以上是小弟的程式碼 很奇怪的是 INPUT之後 沒有東西OUTPUT出來 還有 我自己的演算法是 一開始輸入的NUM /4 是兔子數 然後當兔子數減少的時候 雞數就增加 直到兔子==0 這樣 我寫的程式 有問題嗎..... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.40.81.142

08/28 12:00, , 1F
do while裡的條件是繼續執行的條件還是終止的條件??
08/28 12:00, 1F

08/28 12:03, , 2F
附帶一題, 迴圈裡兔子有減少, 可是雞好像沒寫增加??
08/28 12:03, 2F

08/28 12:04, , 3F
我記得是終止條件(( 我記錯了嗎
08/28 12:04, 3F

08/28 12:05, , 4F
我如果把兩個計算式放進去DOWHILE 可以嗎
08/28 12:05, 4F

08/28 12:06, , 5F
因為我的想法就是想要用(num - rabbit*4)/2去自己算出雞數
08/28 12:06, 5F

08/28 12:07, , 6F
如果要寫成chicken += 2的話 我應該會另外用if去做
08/28 12:07, 6F

08/28 12:09, , 7F
你的do...while執行一次就會跳出了....
08/28 12:09, 7F

08/28 12:11, , 8F
是不是該改成rabbit>=0
08/28 12:11, 8F

08/28 12:14, , 9F
而且chicken的運算式應該放進do while裡面
08/28 12:14, 9F

08/28 12:14, , 10F
還是沒東西阿...我在想說會不會是我電腦出問題
08/28 12:14, 10F

08/28 12:19, , 11F
scanf("%d ",&num); 你%d 後面多一個空格................
08/28 12:19, 11F

08/28 20:20, , 12F
我的程式OK了 沒想到是scanf那邊多一個空格...
08/28 20:20, 12F
文章代碼(AID): #1AbrNTDi (C_and_CPP)
文章代碼(AID): #1AbrNTDi (C_and_CPP)