このコードは、最後のprintfに "%d"を挿入した場合にのみ機能します。私はそれが "ma"は整数だからだと思うが、私はそれを二重にしたいと思うし、私はそのように宣言した。それをどうすれば解決できますか?Cの整数の代わりにdoubleを出力する
"v"は既に定義されています。
#include <stdio.h>
#include <stdlib.h>
#define N 25
double arithmeticMean(int v[N])
{
double ma;
int i,sum=0;
for(i=0;i<N;i++){
sum=sum+v[i];
}
ma=sum/N;
return ma;
}
int main()
{
m1=arithmeticMean(v);
printf("Arithmetic mean: %lf\n",m1);
return 0;
}
あなたは 'm1'または' v'を定義していません。 –
このコードには、 'm1'や' v'の宣言は含まれておらず、コンパイルされません。 https://stackoverflow.com/help/mcveの指示に従ってください。あなたの問題が何であるか知っていると思いますが、 'm1'の宣言を見ることなく、私は確信が持てません) – zwol
' ma = suma/N; ' - >' ma =(double)sum/N; ' – BLUEPIXY