"C by Example"という本からCを学んでいます計算が正しく機能しない
各章の終わりに、練習があります。あなたは以下のコードからわかるように、運動がトップ
/* Chapter 7 Review Exercises #2
- You are a college professor and you have to get the average grades for 10 students. Write a program which prompts you for 10 different grades and then
displays their average */
#include <stdio.h>
int main()
{
float score1, score2, score3, score4, score5, score6, score7, score8, score9, score10;
float average = score1+score2+score3+score4+score5+score6+score7+score8+score9+score10/10;
printf("Please input the scores of the students: \n");
scanf(" %f",&score1);
scanf(" %f",&score2);
scanf(" %f",&score3);
scanf(" %f",&score4);
scanf(" %f",&score5);
scanf(" %f",&score6);
scanf(" %f",&score7);
scanf(" %f",&score8);
scanf(" %f",&score9);
scanf(" %f",&score10);
printf("The average score is: %.2f" , average);
return 0;
}
で書かれているここでの問題は、私は入力番号たびに(コードを実行している場合)ということであるそれは常に(バック私の膨大な数を提供します少なくとも20の数字のように)
番号を限定する方法はありますか、何か間違っていますか?
[mcve]を提供してください。私たちがあなたの入力を知っていれば、答えが簡単になります。 – xenteros
コンポーネントの値を入力した後で、 'average' **を計算する必要があります。あるいは、' average'を必要に応じて常に読み直す関数にします。つまり、初期化されていない変数を読み込み(10)、 'average'に格納します。これは' score'のどれかが変更されても変更されません。 –
私はあなたに訂正されたコードで答えを与えました。お気軽にご利用ください。それは2度upvoted upvotedと答えを促進するために他の回答者によって2度downvotedしました:/正しい答えを緑のチックと正しい答えをupvoteの解決策としてマークするのが良い習慣です。 – xenteros