写一个1004#随机序列#的题解以及自己注意的地方
#include<stdio.h>
#include<math.h>
int main()
{
int T,m,n,q,r;
int e[100000];
double x=0.0;
scanf("%d",&T);
for(m=1;m<=T;m++){
scanf("%d",&n);
for(q=0;q<n;q++){
scanf("%d",&r);
e[q]=r;
}
int max=e[0];
int min=e[0];
int a=0,b=0;
for(q=0;q<n;q++){
if(max<e[q]){max=e[q];}
if(min>e[q]){min=e[q];}
b+=e[q];
}
double p=0.0;
double h=0.0;
p=b*1.0;
p/=n;
for(q=0;q<n;q++){h+=pow((e[q]*1.0-p),2);}
printf("%d %.3lf\n",max-min,h*1.0/n);
}
return 0;
}
***需要注意的是 开数组不要开随机变量 应当开个很大的数组 以此来保证数组量的足够 所以应该养成这个良好的习惯(我就是开了个随机变量的数组然后这题调试了好久
)