【发布时间】:2018-01-26 21:12:27
【问题描述】:
#include <stdio.h>
#include <locale.h>
#include <conio.h>
#include <string.h>
#include <math.h>
int main()
{
int array[5];
int x;
int max;
int y;
float k;
printf("Enter capacity of array")
scanf("%d",&y);
for(x=0;x<y;x++)
{
printf("Enter the numbers:");
scanf("%d",&array[x]);
max*=array[x];
}
k=pow(max,(1/y) );
printf("%d\n",max);
printf(" %f",k);
getch();
}
大家好,我想求几何平均值,但我总是得到 k=1 我知道这是简单的代码,但我看不到问题,谁能帮助我?
【问题讨论】:
-
在
max*=array[x];中,变量max未初始化,因此结果将是不确定的。除了任何算法问题,它应该是int max = 1;。 -
阅读 C 中的整数除法。
-
学习使用你的平台/工具链调试器