[ad_1]
ヘイ! 私は現在CLionを使用してCでプログラミングしていますが、これは初めてです。
質問は:
「0が与えられるまでユーザーに数字を尋ねるプログラムを書いてください:
与えられた数字の数を出力します (0 を除く):
カウント: 5
すべての数値の合計を出力します。
合計: 78
平均を出力します。
平均: 15.6″
しかし、合計を印刷できないようですか? 方法がわからない平均。
私が試したこと:
int main() { int input = 5; while(input != 0) { printf("Enter 5 number (0 to stop): "); scanf("%i", &input); } int sum = input; printf("The sum is: %i", sum); return 0; }
解決策 1
合計と平均は単純な数学的計算です。 そのために必要な操作を書き留めておけば、書いたものをコードに変換できます。
解決策 2
コードが期待どおりに動作しないか、理由がわかりません。
ほぼ普遍的な解決策があります。コードをデバッガーで段階的に実行し、変数を調べます。
デバッガーは、コードが何を行っているかを示すためにここにあり、あなたのタスクはコードが何をすべきかを比較することです。
デバッガーには魔法はありません。あなたの cpde が何をするべきかを知りません。バグを見つけません。何が起こっているかを示すことで、あなたを助けるだけです。 コードが期待どおりに動作しない場合は、バグに近づいています。
コードの動作を確認するには: ブレークポイントを設定してコードの実行を確認するだけです。デバッガーを使用すると、行を 1 行ずつ実行し、実行時に変数を調べることができます。
デバッガ – ウィキペディア (フリー百科事典)[^]
Visual Studio 2010 でのデバッグの習得 – 初心者向けガイド[^]
Visual Studio 2010 を使用した基本的なデバッグ – YouTube[^]
1.11 — プログラムのデバッグ (ステッピングとブレークポイント) | C++ を学ぶ[^]
デバッガーは、コードが何を行っているかを表示するためだけに存在し、あなたのタスクはコードが何をすべきかを比較することです。
解決策 3
Patrice が書いたようにデバッガーの使い方を学ぶと、間違いや不足しているコードを見つけることができます。
チップ:
1.ループ内の入力数をカウントする
2.ループで合計する必要があります(値が次の入力で上書きされるため)
3. ループ後の入力数の出力
解決策 5
コードは次のようになります
int main() { int input = 5; int sum = 0; int count = 0; while(input != 0) { printf("Enter 5 number (0 to stop): "); scanf("%i", &input); sum += input; if (input != 0) ++count; } //int sum = input; float avg = (float) sum; if (count != 0) avg /= count; printf("Count is: %d\n", count); printf("The sum is: %d\n", sum); printf("Average is: %.2f\n", avg); return 0; }
[ad_2]
コメント