- ベストアンサー
コンパイルの結果を入れ替える方法は?
- コンパイルの結果を上下入れ替える方法について教えてください。元のコードはmodori = 6 kansuu de hyoujiとなっています。
- コンパイルの結果を入れ替えてmodori = 6 kansuu de hyoujiにする方法を教えてください。
- コンパイルの結果を入れ替えることは可能でしょうか?具体的な方法を教えてください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
kansuu de hyouji modori = 6 上記のメッセージはプログラムで画面上の表示する(printf)という関数を実行することで表示されています。 2つあるprintfが呼ばれた順に実行されています。 #include <stdio.h> int kansuu(int hikisuu1, int hikisuu2); int main() { int modori; //kansuu関数を実行し、結果を受け取ります。 //kansuu関数内でprintfを実行しているのでこの時点で"kansuu de hyouji\n"が表示されます。 modori = kansuu(2, 3); //"modori = ??\n"の結果を表示します。 printf("modori = %d\n", modori); //終了します。 return 0; } int kansuu(int hikisuu1, int hikisuu2) { //"kansuu de hyouji\n"を表示します。 printf("kansuu de hyouji\n"); //引数で受け取ったhikisuu1×hikisuu2の結果を返します。 return hikisuu1 * hikisuu2; } 一つ一つ解説するとこうなります。 kansuu内でprintf("kansuu de hyouji\n");を実行していますが、 kansuu関数は掛け算をしているだけなのでprintfをしなくても良さそうですね。 なので下記のように。 #include <stdio.h> int kansuu(int hikisuu1, int hikisuu2); int main() { int modori; modori = kansuu(2, 3); printf("modori = %d\n", modori); printf("kansuu de hyouji\n"); return 0; } int kansuu(int hikisuu1, int hikisuu2) { return hikisuu1 * hikisuu2; }
お礼
貴重なご回答まことにありがとうございました。 なぜそうなるのか現在解析中です。 掲示板のご回答など 現在の私のレベルだと説明されてもまだそれを理解するスキルがないです。 なので、 参考書を読んでも、奥が深いので、分からないのが多いです。 現在、私が有力視しているプログラムのスキルアップは! 1)掲示板に質問して少しでも何かを得ること 2)プログラムをいじることにより、コンパイルの結果がどうなるかを、見極めながら、プログラムの構文 の役割を知る 以上2件です。 #include <stdio.h> int A(int B, int C); int main() { int D; D = A(1.0,2.0); printf("(1)= %d\n", D); return 0; } int A(int E, int F) { return 2 * 3; } 結果は (1)= 6 以上に変更しました。 printf("kansuu de hyouji\n"); は 削除しまして! 解析中するうえで、シンプル化したほうがわかりやすいので省きました。 頑張りますので今後ともよろしくお願いいたします。