本文主要是介绍n个整数存放在一个一维数组A中,任选一种程序设计语言,编写一个函数,利用递归的方法,求数组中各整数的平均值,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
n个整数存放在一个一维数组A中,任选一种程序设计语言,编写一个函数,利用递归的方法,求数组中各整数的平均值
float average(int arr[], int n) {if (n == 1) {return arr[0];}else {return (average(arr, n - 1)*(n - 1) + arr[n - 1]) / n;//前面n-1个数的平均值*(n-1)=前面n-1个数的总和,//前面n-1个数的总和+当前数,最后除n则为平均值}
}
int main()
{int arr[20] = { 0 };//默认最大输入长度不超过20int n = 0;printf("请输入数组长度n:");scanf("%d", &n);int i = 0;printf("\n请输入数组数据:");for (i = 0;i < n;i++){scanf("%d", &arr[i]);}printf("\n数组平均值为:");float ave = average(arr, n);printf("%f", ave);}
测试用例:
这篇关于n个整数存放在一个一维数组A中,任选一种程序设计语言,编写一个函数,利用递归的方法,求数组中各整数的平均值的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!