c语言用指针求平均数程序,用c语言定义一个函数,计算平均数,方差,标准差.(请用指针完成)...

//计算平均数,方差,标准差.#include #include #include #include #include #define N 1...可以是输入100个数吗?

你的意思是要让数组长度可变吗?也可以://计算平均数,方差,标准差。

#include 

#include 

#include 

#include 

#include 

void TongJi(double a[],int n,double *aver,double *vari,double *stdDev){

//对长度为n的数组a进行统计,统计其平均值aver、方差vari、标准差stdDev

int i;

double *p,aver2;

*aver=0.0;

for(p=a+(n-1);p>=a;--p){

*aver+=*p;//累加各元素

aver2+=(*p)*(*p);//累加各元素的平方

}

*aver/=n;//求平均值

aver2/=n;//求平方的平均值

*vari=aver2-(*aver)*(*aver);//计算方差

*stdDev=sqrt(*vari);//计算标准差

}

int main(){

double *a,pj,fc,bzc;

int i,N;

printf("Input N:"); scanf("%d",&N);

a=(double *)malloc(sizeof(double)*N);//为a分配数组内存空间

if(!a)return 0;//如果分配失败,退出

srand(time(NULL));

for(i=0;i

a[i]=rand()/(RAND_MAX+1.0); //产生随机小数[0,1)

printf("%lg ",a[i]);

}

TongJi(a,N,&pj,&fc,&bzc);

printf("\nPingJun=%lg, FangCha=%lg, BiaoZhunCha=%lg",pj,fc,bzc);

free(a);//释放a数组所占空间

printf("\nFinished!\n");

getch();

return 0;

}不是,我是指我可以自己输入一组数据。比如,我要输入一组学生的成绩,求其平均值,方差,标准差。删除语句

srand(time(NULL));

将语句:

a[i]=rand()/(1.0+RAND_MAX);

修改为:

scanf("%lf",&a[i]);

OK了。这种简单的修改应该要自己学着做,不能太依赖哦!

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值