Yahoo Answers is shutting down on May 4th, 2021 (Eastern Time) and beginning April 20th, 2021 (Eastern Time) the Yahoo Answers website will be in read-only mode. There will be no changes to other Yahoo properties or services, or your Yahoo account. You can find more information about the Yahoo Answers shutdown and how to download your data on this help page.

?
Lv 6

# C語言初學者的作業問題

Update:

int main(void){

int w,x,y;

printf("請輸入樹枝w公分：");

scanf("%d",&m);

printf(每天走樹枝x公分：");

scanf("%d",&n);

printf("每天往後退y公分：");

scanf("%d",&d);

Update 2:

int main(void){

int w,x,y;

printf("請輸入樹枝w公分：");

scanf("%d",&w);

printf(每天走樹枝x公分：");

scanf("%d",&x);

printf("每天往後退y公分：");

scanf("%d",&y);

Rating

參考看看，謝謝

程式碼如下:

#include <stdio.h>

int main(void)

{

int w = 0, x = 0, y = 1, day = 0;

while(1){

printf("Please input a number:(-1 to quit)");

scanf("%d", &w);

if( w == -1 ) {

printf("Bye　Bye.\n");

break;

}

for(x = 0; x < w; x = x + 3) {

x = x - y ;

day++;

}

printf("%d days.", day );

day = 0;

printf("\n");

}

return 0;

}

2009-11-22 19:28:21 補充：

執行結果如下:

walter:/opt/testc# gcc ant.c

walter:/opt/testc# ./a.out

Please input a number:(-1 to quit)12

6 days.

Please input a number:(-1 to quit)6

3 days.

Please input a number:(-1 to quit)-1

Bye　Bye.

2009-11-22 19:29:46 補充：

我的程式碼僅供參考，

因自學觀念不好，請各路高手見諒，謝謝。

2009-11-22 19:30:00 補充：

我的程式碼僅供參考，

因自學觀念不好，請各路高手見諒，謝謝。

2009-11-22 20:55:11 補充：

謝謝Jacob Lee大師的指導，

真不好意思，總是有錯^^

唉~真是得多多加強才是。

2009-11-22 22:09:06 補充：

#include

int main(void)

{

int w = 0, x = 0, y = 0, z = 0, day;

while(w != -1) {

day = 0;

printf("請輸入樹枝w公分:");

scanf("%d", &w);

printf("每天走樹枝的x公分:");

scanf("%d", &x);

printf("每天往後退y公分:");

scanf("%d", &y);

2009-11-22 22:09:16 補充：

for(z = x; z < w; z += x) {

z -= y ;

day++;

}

if( z >= w ) {

day++;

}

printf("%d days.\n", day );

printf("Continue press 1 or press -1 to quit.");

scanf("%d", &w);

}

return 0;

}

2009-11-22 22:09:56 補充：

執行結果如下:

walter:/opt/testc# gcc ant.c

walter:/opt/testc# ./a.out

請輸入樹枝w公分:12

每天走樹枝的x公分:3

每天往後退y公分:1

6 days.

Continue press 1 or press -1 to quit.

2009-11-22 22:10:57 補充：

Continue press 1 or press -1 to quit.1

請輸入樹枝w公分:12

每天走樹枝的x公分:3

每天往後退y公分:1

6 days.

Continue press 1 or press -1 to quit.-1

walter:/opt/testc#

2009-11-22 22:16:40 補充：

我後來加的內容不見了，

#include

int main(void)

{

int w = 0, x = 0, y = 0, z = 0, day;

while(w != -1) {

day = 0;

printf("請輸入樹枝w公分:");

scanf("%d", &w);

2009-11-22 22:17:17 補充：

printf("每天走樹枝的x公分:");

scanf("%d", &x);

printf("每天往後退y公分:");

scanf("%d", &y);

for(z = x; z < w; z += x) {

z -= y ;

day++;

}

2009-11-22 22:17:33 補充：

if( z >= w ) {

day++;

}

printf("%d days.\\n", day );

printf("To continue press 1 or press -1 to quit.");

2009-11-22 22:17:42 補充：

scanf("%d", &w);

}

return 0;

}

2009-11-22 22:18:34 補充：

系統怎麼怪怪的啊@@

一頭霧水@@

發生蝦米事情了??

不是一副高手姿態，結果錯一堆，

我是不會罵的。

哪個人不是從不會開始學？

我說過好幾次了：

如果高手見過我學程式前半年寫的東西，

應該有 90% 的高手會認定：這個人絕對是程式白痴！

程式本身沒什麼問題（我沒細看邏輯）。

看起來不錯，架構也不差！

x = x - y ;

可用

x -= y;

printf("%d days.", day);

day = 0;

printf("\\n");

可用

printf("%d days.\\n", day);

day = 0;

2009-11-22 20:32:57 補充：

day = 0; 可向前提到 while 後，

這樣，day 就不用給初值 0 了

加油！ ^_^

2009-11-22 20:33:54 補充：

漏寫一句：

不是一副高手姿態、結果錯一堆，〝又屨勸不聽，〞

我是不會開罵的。

2009-11-22 21:51:59 補充：

你那些不叫錯！

只是有些不是最好的寫法。

別說你，

我現在看我一個月前寫的程式，

也會常發現：那時怎會那麼豬頭寫這這樣？

所以，有小小的不良，沒有關係！

不要是

重大不良！

根本錯誤！

觀念嚴重偏差！

被人指出還嘴硬！

就好。 ^_^