只需要在C中搞定...想要製作計算用戶輸入的任何數字的平均值的程序。將變化的數字分配給單個變量
該程序工作正常,我不能'邏輯'如何做下一部分。
我需要能夠把他們輸入的每個數字和他們的平均值,使用他們輸入的第一個scanf除以的數量。我只爲他們輸入的每個數字分配了一個變量,但在看了代碼後,我意識到需要使用微積分或一些編程技巧才能夠無限地(有效)執行此操作。基本上,變量需要每次都改變,所以總和可以被分開,然後被分成總數。我在咆哮......
任何能理解我愚蠢問題的人都能給我一些建議嗎?那太棒了......
我的包含和int main()在那裏,不用擔心。只覺得沒有必要用已知的東西來混淆它。另外,我不會做任何速記 - 我覺得現在不需要。
// Base variables
int iUserReq, iNumCounter = 0;
// Each individual number
double dUserNum = 0.0;
// Calculation
double dNumSum = 0.0, dNumAvg = 0.0;
// Ask user for the number of variables to be averaged... will come in handy
printf("Please input how many numbers you would like to average together, as a number. For example, 10.\nTry to keep it low, because you're going to be putting them all in manually. > ");
scanf("%d", &iUserReq);
// If user inputs 0 or negative number, keep asking until they put in a positive number
while(iUserReq <= 0)
{
printf("Please input a number greater than 0. > ");
scanf("%d", &iUserReq);
}
// This adds a counter, so for the number of numbers the user wants to average, it will loop that many times and ask for an input that many times
// I.e. they want to average 10 numbers, it asks for 10 numbers
// THIS IS WHERE I'M STUCK... HELP?
while(iNumCounter < iUserReq)
{
printf("Please input number. > ");
scanf("%lf", &dUserNum);
iNumCounter = iNumCounter + 1;
}
return 0;
謝謝...
巴格爾
你已經聲明瞭一個名爲dNumSum的變量..你認爲你應該如何處理它? –
請記住,平均值是所有輸入*的總和*除以輸入*的數量。 –
繼續Joachim的評論 - 您可以保留所輸入數字的總和,因爲用戶輸入數字,然後除以任意點的數字數以顯示連續的平均值 –