2016-09-13 6 views
-2

「こんにちは5号が正しいです!」と印刷しようとしています。私がしましたこれらの2つのprintf文をC言語でどのように組み合わせることができますか?

System.out.println("Hello the number "+number+" is correct!"); 

:どのように私は、Javaのように1つのステートメントでこれを行うことができます

printf("Hello the number %d", number); 
printf(" is correct!\n"); 

:C.

で、私は今それをやっている方法は、2つのprintf文であります

printf("Hello the number %d", number, " is correct!"); 

しかし、 "正しいです!"表示されません。

これは1つのステートメントでこれを行う方法ですか? 私はあなたがそうのような文字列の中央に書式指定子を埋め込むことができますC.

+0

してみてください['printf'マンページ](http://linux.die.net/man/3/printf)はあなたの友人です。 – Olaf

答えて

5

に非常に新しいですごめんなさい:また

printf("Hello the number %d is correct!\n", number); 

、あなたは残りの部分を別の書式指定子を使用することができます

printf("Hello the number %d%s\n", number, " is correct!"); 
1

printfファンクションには、文字列の形式とそれに続く形式で参照される引数が必要です。

お使いの場合には
printf("Hello the number %d is correct!\n", number); 

printf("Hello the number %d", number, " is correct!")は、引数としてnumberと「is correct!」を使用して文字列の形式として「Hello the number %d」として理解されるであろうと、あなたの形式で参照引数を1つしか持っているとして、「is correct!はありません」結果の文字列に表示される場合、これが "is correct!"が表示されない理由です。

+0

Cは_methods_をサポートしていませんし、OOPLでも 'printf'は単なる関数でした。 – Olaf

+0

@Olaf私の悪い、固定されたコメント用のthxです。 –

0

あなたは1つのアペンダ(%dを)持っているので、あなたの試みが動作していないが、2つのパラメータ("は正しいです!"

が...代わりに

int main(void) { 
    int number =0; 
    printf("Hello the number %d is correct!", number); 
    return 0; 
} 
関連する問題