int main()
{
int i ;
float arr[i];
float sum;
float average;
do
{
printf("Give a positive real number (negative will stop) >");
printf("\n");
scanf("%f", &arr[i]);
sum += arr[i];
} while (arr[i]<0);
average = sum/i;
printf("Average is %f", &average);
return 0;
}
为什么输完第一个数就自动关闭了
i没有初始化,初始化i=0
#include <stdio.h>
int main()
{
int i = 0 ;
float arr[101];
float sum = 0;
float average;
do
{
i++;
printf("Give a positive real number (negative will stop) >");
printf("\n");
scanf("%f", &arr[i]);
if(arr[i] < 0){
break;
}
sum += arr[i];
} while (arr[i]>0);
average = sum/(i-1);
printf("Average is %f", average);
return 0;
}
然后输入1 2 3 -1看看