c语言中求数组的平均数
时间: 2023-12-03 19:39:46 浏览: 124
以下是使用C语言求数组平均数的例子:
```c
#include <stdio.h>
#include <stdlib.h>
#define NUM 10
float Mean(int a[], int n) {
int i;
int sum = 0;
for (i = 0; i < n; i++)
sum = sum + a[i];
return ((float)sum / n);
}
int main() {
int i;
int feedback[NUM] = {0};
for (i = 0; i < NUM; i++) {
printf("请输入第%d个数:", i + 1); scanf("%d", &feedback[i]);
}
printf("Mean =%3f\n", Mean(feedback, (sizeof(feedback) / sizeof(feedback[0]))));
}
```
相关问题
c语言求数组平均数,并求出距离平均数最近的数组
在C语言中,计算数组平均数并找到离平均数最近的元素需要几个步骤:
1. **计算平均数**:
```c
double calculate_average(int arr[], int size) {
int sum = 0;
for (int i = 0; i < size; i++) {
sum += arr[i];
}
return (double)sum / size;
}
```
这里假设`arr[]`是一个整型数组,`size`是数组长度。
2. **遍历数组寻找最接近平均数的元素**:
- 初始化两个变量,`closest_num`保存当前找到的最近的元素,`min_diff`保存它与平均数的差值(默认为正无穷大),以及一个临时变量`temp_diff`。
```c
int find_nearest_to_average(int arr[], int size, double avg) {
int closest_num = arr[0];
double min_diff = abs(arr[0] - avg);
for (int i = 1; i < size; i++) {
double temp_diff = abs(arr[i] - avg);
if (temp_diff < min_diff) {
closest_num = arr[i];
min_diff = temp_diff;
}
}
return closest_num;
}
```
3. **整合两部分代码**:
先计算平均数,然后用该平均数找出最接近的元素:
```c
int main() {
int arr[] = {1, 2, 3, 4, 5};
int size = sizeof(arr) / sizeof(arr[0]);
double avg = calculate_average(arr, size);
int nearest_num = find_nearest_to_average(arr, size, avg);
printf("Array average is %.2f\n", avg);
printf("Closest number to the average is %d\n", nearest_num);
return 0;
}
```
注意:这个例子假设你正在处理整数数组。如果数组包含浮点数,你需要调整上述函数以适应浮点数的操作。
c语言指针法求数组平均数
可以使用指针来遍历数组并计算平均数,具体实现如下:
```c
#include <stdio.h>
int main() {
int arr[] = {1, 2, 3, 4, 5};
int n = sizeof(arr) / sizeof(arr[0]);
int sum = 0;
// 使用指针遍历数组并计算总和
int *p = arr;
for (int i = 0; i < n; i++) {
sum += *p;
p++;
}
// 计算平均数并输出
double avg = (double) sum / n;
printf("平均数为 %.2f", avg);
return 0;
}
```
输出结果为:
```
平均数为 3.00
```
首先定义了一个整型数组 `arr`,然后计算出数组的长度 `n`。接着定义一个指针 `p`,将其指向数组的首元素,使用指针遍历数组并计算总和。最后计算平均数并输出即可。
阅读全文