コード //Variables #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> int main(void) { char C; printf("Please choose one from menu:\n1.Calculation 2.Exit\n"); (void)scanf("%c", &C); if (C == '1') { int i = {}; while (i == 1){ double a, b, X = {}; char c; printf("1.Addition 2.Subtraction 3.Multiplication 4.Division\n"); (void)scanf("%c", &c); printf("Please input 1st number.\n"); (void)scanf("%lf", &a); printf("Please input 2nd number.\n"); (void)scanf("%lf", &b); if (c == '1') { X = a + b; } else if (c == '2') { X = a - b; } else if (c == '3') { X = a * b; } else if (c == '4') { X = a / b; } printf("Calculation result is %lf", X); printf("Please choose one from menu:\n1.Calculation 2.Exit\n"); if (i != 1) break; } printf("Bye bye!"); } else if (C == '2') { printf("Bye bye!"); } }
ここに質問の内容を詳しく書いてください。
(例)
Visual Studio 2019を利用してプログラムを作成していたのですが、入力したプログラムの中で実行されない部分が出てきてしまいました。私はプログラミングの完全な初心者で、どこを直せばいいのかさっぱりわかりません。以下に作成したプログラムを添付いたしますので、解決のためにアドバイスを頂けると嬉しいです。
実現したいこと
ここに実現したいことを箇条書きで書いてください。
1.選択肢1と2から一つ選び、キーボードに入力する。
(1を選んだ場合)
2. 四則演算に対応した選択肢が4つ表示される。
3. 一つ目の数字を入力するように指示を出す
4. 二つ目の数字を入力するように指示を出す
5. 計算結果が表示される
6. 1に戻る
(2を選んだ場合)
2. その場で終了する
発生している問題・エラーメッセージ
エラーメッセージや警告は出ませんでした。そのために、何が間違っているのかが自分で理解することができません。現状では、最初の選択肢でどちらを選んでもその場でプログラムが終了してしまい、(1を選んだ場合)で想定していた動作が全く起こらなくなってしまっています。
試したこと
自分でプログラムを読み返し、whileをforにしてみたり、かっこの対応関係を見直したりしてみました。
補足情報(FW/ツールのバージョンなど)
回答2件
あなたの回答
tips
プレビュー