2016-10-15 5 views
-4

私は初心者のプログラマーです。プログラムの実行中に繰り返しエラーが発生しました。 表示される出力が間違っているか奇妙です。このプログラムの 例:単純なプログラムのためのcの出力が間違っています

#include<stdio.h> 

int main() 
{ 

    int age; 

    age=969; 

    printf("Methuselah was %d years old\n"); 

    return(0); 
} 

私は取得しています出力は4199232

私はこれをどのように修正すればよいのですか? 私はQuincyを使用しています

+1

'printf関数(、年齢「メトセラは古い\ nの%d個の年でした」);' – BLUEPIXY

+0

の#include (出力誤差はこれに関連しているが、それはとにかく間違いだされていません) –

+1

あなたのコンパイラは警告の連を吐きする必要がありますあなたに。常に警告を有効にしてコンパイルしてください(例えば '-Wall -Wextra'を最低限にしてください)。***警告はコンパイルされたコードを受け入れることはありません(警告や警告が出ないように修正してください)さらに多くのものを追加するには、警告レベルをさらに高めるために '-pedantic'を追加します。あなたが通常のコンパイル文字列の一部として '-Wall -Wextra -pedantic'を使ってCを書くことを学ぶならば、あなたはもっと早く学び、そのためにはるかに優れたプログラマーになるでしょう。 –

答えて

0

でなければなりません。これを行うには、引数としてageを渡します。引数を指定せずにprintf("%d")を呼び出す

#include <stdio.h> 

int main(void) 
{ 
    int age; 
    age = 969; 
    printf("Methuselah was %d years old\n", age); 
    return 0; 
} 

は奇妙な出力を与え、印刷しようとするスタック上のランダムな値になります。

4

フォーマット文字列内の%dに対応する変数は何ですか。
その行はおそらく、あなたが印刷するprintfどの変数を教えてくれませんでした

printf("Methuselah was %d years old\n", age); 
関連する問題