0

さまざまな種類の for ループを使用して、1 から 10 までの数字の立方体を見つけようとしています。for ループが評価された後、プログラムが停止し、while ループの評価に進まないのはなぜでしょうか? 誰か助けてくれませんか?ちなみに、for ループと while ループは同じことをするはずです。ありがとう。

#include <stdio.h>
#include <stdlib.h>

/*
 * 
 */
int main(void) 
{
    int num;
    for ( num=1; num<11; num++){
        printf("The cube of %d is %d\n", num, num*num*num);
    }
    getchar();
    return 0;
}

#include <stdio.h>
int main1(void)
{
    int num1;
    scanf("%d", &num1);
    while (num1<11) {
        printf("The cube of %d is %d\n", num1, num1*num1*num1);
        num1++;
        }
    getchar();
    return 0;
}

PS 私の最初のプログラミング言語は Python です。そのため、C が最初の for ループの後で停止する理由がわかりません... :(

4

2 に答える 2

3

main()main1()は 2 つの異なる機能です。システムはmain()、プログラムのエントリ ポイントである を呼び出します。終了するときmain()、それはあなたのプログラムが終了するときです。main1まったく触れていません。

2 つの関数を連結するか (コピーして に貼り付けるmain1) 、またはからmain呼び出します。ただし、最初に前方宣言が必要です。main1()main()

int main1(void);

int main(void)
{
    // ...
    main1();
}

int main1(void) { ... }

ところで、main1に似ているため、関数の名前としてはあまり適切ではありませんmain。これは、コードを保守する人々を混乱させる可能性があります。

于 2014-09-05T22:04:02.737 に答える
-2

num と num1 を宣言した後、for ループで num を 1 に設定しますが、while ループでは num1 を設定しません。加えて、言及された主な機能の問題

于 2014-09-05T22:06:45.117 に答える