Claude先生に聞いてみました。
なお、質問文や写真に「演算の種類」を指定する方法が記載されていなかったので、こちらで勝手に1:加算 2:減算 3:乗算 4:除算とさせていただきました。
-------------------------------------------------
#include \u0026lt;stdio.h\u0026gt;
#include \u0026lt;stdlib.h\u0026gt;
int main(int argc, char *argv[]) {
if (argc != 4) {
fprintf(stderr, \u0026quot;使用法: %s \u0026lt;演算の種類\u0026gt; \u0026lt;数字1\u0026gt; \u0026lt;数字2\u0026gt;\
\u0026quot;, argv[0]);
fprintf(stderr, \u0026quot;演算の種類: 1=加算, 2=減算, 3=乗算, 4=除算\
\u0026quot;);
return 1;
}
int op = atoi(argv[1]);
double a = atof(argv[2]);
double b = atof(argv[3]);
if (op \u0026lt; 1 || op \u0026gt; 4) {
fprintf(stderr, \u0026quot;エラー: 演算の種類は1〜4で指定してください。\
\u0026quot;);
return 1;
}
if (op == 4 \u0026amp;\u0026amp; b == 0.0) {
fprintf(stderr, \u0026quot;エラー: ゼロ除算はできません。\
\u0026quot;);
return 1;
}
double result;
const char *op_name;
switch (op) {
case 1: result = a + b; op_name = \u0026quot;加算\u0026quot;; break;
case 2: result = a - b; op_name = \u0026quot;減算\u0026quot;; break;
case 3: result = a * b; op_name = \u0026quot;乗算\u0026quot;; break;
case 4: result = a / b; op_name = \u0026quot;除算\u0026quot;; break;
}
printf(\u0026quot;%s: %g %c %g = %g\
\u0026quot;,
op_name, a,
(char[]){'+', '-', '*', '/'}[op - 1],
b, result);
return 0;
}
-------------------------------------------------
コンパイルしてませんが、たぶん大丈夫じゃないかと思います。