incompatible type for argument 1 of
以下是在VS2008下编译通过的,我的VC6.0貌似有问题,不然就是我的程序有问题了。希望对你有所帮助。
#include “stdafx.h”
#includestdio.h
#includetime.h
#includestdlib.h
void printArray(double x[],int size)
{
srand( time( 0 ) );
int i;
for(i=0;isize;i++){
x[i]=rand()%999-1;
printf(“%lf\t”,x[i]); // 类型为double
}
}
double mean(double x[],int size){
int i;
double sum=0.0,mean;
for(i=0;isize;i++)
sum=sum+x[i];
mean=sum/size;
return mean;
}
double deviation(double x[],int size){
int i;
double sum1=0.0,mean;
for(i=0;isize;i++) {
sum1=sum1+x[i];
mean=sum1/size;
}
double a, sum2=0.0;
for(i=0;isize;i++){
sum2=sum2+(x[i]-mean)*(x[i]-mean);
a=sum2/闭岁铅(size-1);
return a;
}
}
int main(void){
const int size=10;
double x[size],d,e;
printArray(x,size); // 传参数时要注意,x[i]只是一个元素,x代表首元素地址,以下类似
d=mean(x,size);
e=deviation(x,size);
printf(“10个随机数的均值:%lf”雀吵,d);
printf(“\n10个数的标准偏差:%lf\n”,e);
system( “pause”轿好 );
return 0;
}
c语言求助!我这个代码输出的标准差是1.#J不知道怎么回事,让同学看也看不出来?
综合你的代码来看,问题出在average函数,函数里的sum没有初始化为0;
到时计算平均值出错。
可能你肢轿会问为啥平均信腊值不是输出了正确的值吗?那是你第一次调用这个average函数,sum的内存可能刚好等于0;第二次调用时可历坦肆能之前用的数据还在,那就出错了。
加上初始化就可以解决此问题。
急!!!!这是一段c语言,编译没有问题,但是达不到踢出异常数据的功能,最后总是显示5个异常数据,求教哈
虽然腔型我不知道你的程序是干嘛的,但我一看你的程序就有两伍郑猜处错误:
if(y=0.05)x=0;///////////应该改为if(y==0.05)
else x=1;
art:if(x=0)//////////应该改丛敬为if(x==0)