當這個程序返回平均值時,每次都是零,我沒有正確地將值傳遞給average()函數嗎?我不知道要修復什麼,因爲我嘗試切換數據類型並輸出%f。
我不想爲我完成代碼,只需要一些指導。感謝任何可以提供幫助的人。爲什麼我的用戶定義數組的平均值不正確? C
#include <stdio.h>
float average(float arr[], float num) {
for (z = 0; z < num; ++z) {
sum = arr[z]+1;
}
avg = sum/num;
return avg;
}
int main(){
int count;
int a;
float initial[a];
float avg;
avg = average(initial, a);
printf("enter number of values you'd like averaged.\n ");
scanf("%i",&a);
count = a;
printf("enter numbers you'd like averaged\n");
for(a= 0; a < count; a++)
{
scanf("%f",&initial[a]);
}
printf("The average is %d",avg);
return 0;
}
這是不可讀的。正確縮進和格式化代碼。 – Olaf
我沒有看到任何平均值。它只是添加到數組元素.. –
您的平均功能是錯誤的。它總是會返回'(arr [num] + 1)/ num'。 –