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
? asked in 電腦與網際網路程式設計 · 1 decade ago

C語言初學者的作業問題

題目是一條樹枝設w公分,螞蟻走樹枝x公分,但後退y公分,請問幾天走完樹枝?

如一條12公分,走3公分,後退1公分,答是走完六天

要有while和for和if

拜託大家了

Update:

那個我要設W,X,Y為輸入變數

int main(void){

int w,x,y;

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

scanf("%d",&m);

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

scanf("%d",&n);

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

scanf("%d",&d);

接下來for和if的話不知道怎麼用

請教教我,謝謝。

Update 2:

int main(void){

int w,x,y;

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

scanf("%d",&w);

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

scanf("%d",&x);

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

scanf("%d",&y);

有地方貼上去是錯的,不好意思

3 Answers

Rating
  • 1 decade ago
    Favorite Answer

    參考看看,謝謝

    程式碼如下:

    #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 補充:

    系統怎麼怪怪的啊@@

    一頭霧水@@

  • 1 decade ago

    發生蝦米事情了??

  • 1 decade ago

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

    我是不會罵的。

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

    我說過好幾次了:

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

     應該有 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 補充:

    你那些不叫錯!

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

    別說你,

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

    也會常發現:那時怎會那麼豬頭寫這這樣?

    所以,有小小的不良,沒有關係!

    不要是

     重大不良!

     根本錯誤!

     觀念嚴重偏差!

     被人指出還嘴硬!

    就好。 ^_^

Still have questions? Get your answers by asking now.