- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:【C初心者】+,-,*./について【電卓】)
C初心者のための四則演算【電卓】
このQ&Aのポイント
- C言語の初心者が四則演算について学ぶためのプログラムです。
- プログラムは実行可能ですが、見た目がややこしくなっています。
- また、printf文の使用回数を減らすための改良案が提案されています。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
"+"、"-"、"*"、"/" 等の「演算子」を変数signに入れて演算させることはできません。 変数に代入できるのは「被演算子」です。 四則演算部分を関数に移動すればmain中で計算結果を出力するprintf を1行にすることはできますが、その関数のなかで switch~case文により分岐することは変わらないですが。 ※本質的な違いは無いですが、main中で計算結果を出力するprintfが1行でスッキリ書けるという違いです。 int main{void) { : double result; : if(error = calc(ope, n2, n3, &result) != 0) printf(計算すると%fになります.\n",result); : : } int calc(int w_ope, double w_n2, double w_n3, double *res) { int status = 0; switch (w_ope) case 0 : res = w_n2 + w_n3); break; case 1 : res = w_n2 - w_n3); break; case 2 : res = w_n2 * w_n3); break; case 3 : res = w_n2 / w_n3); break; default: status = -1; } return status; }