如何求数组中周期元素的平均值
比如,有某数组s[21]={1,2,4,5, 7, 5,4,2,1,2,4,5, 7, 5,4,2,1,2,4,5, 7}我的思路是:首先求出周期元素的2个极大值,然后利用极大值所对应的下标求周期元素的和,从而得到平均数。
程序代码:
void main() /*{ int a[21]={1,2,4,5, 7, 5,4,2,1,2,4,5, 7, 5,4,2,1,2,4,5, 7}; int i, c=0; for (i=1; i<=20; i++) { if (a[i-1]<a[i] && a[i]>a[i+1]) { printf("%d\n", i); c++; if(c==2) break; } } }求周期元素的2个极大值所对应的下标,设为m和n,得出m=4, n=12*/ { int b[21]={1,2,4,5, 7, 5,4,2,1,2,4,5, 7, 5,4,2,1,2,4,5, 7}; int j; float sum=0.0, aver; for (j=4; j<=12; j++) sum=sum+b[j]; aver=sum/9; printf("%f\n", aver); }问题1:求平均数时如何引用m和n,即如何把两个函数关联起来(再具体点,如何写子函数)
问题2:最初的元素数组是s[21],即 a[21]和b[21]都是用的某函数s()得出的结果s[21],如何把这3个函数关联起来
而且我觉得我这个程序并不好,您有没有更好的办法,谢谢!
[ 本帖最后由 qhxxbc 于 2011-2-20 22:15 编辑 ]