如何使用C语言编写函数来同时计算一组数值的平均值、最大值和最小值?
时间: 2024-12-13 22:28:47 浏览: 5
用C语言实现数组元素最大值/最小值查找、数组元素平均值计算、数组元素排序等功能
在C语言中,你可以创建三个函数分别用于计算平均值、最大值和最小值,然后在一个主函数中调用它们。下面是一个简单的例子:
```c
#include <stdio.h>
#include <stdlib.h> // 包含处理内存分配和释放的头文件
// 函数声明
double calculate_average(double *arr, int size);
double find_max_value(double *arr, int size);
double find_min_value(double *arr, int size);
// 主函数
int main() {
double *numbers = (double*)malloc(sizeof(double) * 5); // 创建数组并分配内存
if (numbers == NULL) {
printf("Memory allocation failed.\n");
return 1;
}
// 初始化数组
for (int i = 0; i < 5; i++) {
numbers[i] = rand(); // 使用随机数填充
}
double average = calculate_average(numbers, 5);
double max_value = find_max_value(numbers, 5);
double min_value = find_min_value(numbers, 5);
printf("Average: %.2f\n", average);
printf("Max Value: %.2f\n", max_value);
printf("Min Value: %.2f\n", min_value);
free(numbers); // 释放内存
return 0;
}
// 计算平均值
double calculate_average(double *arr, int size) {
double sum = 0;
for (int i = 0; i < size; i++) {
sum += arr[i];
}
return sum / size;
}
// 找到最大值
double find_max_value(double *arr, int size) {
double max = arr[0];
for (int i = 1; i < size; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
return max;
}
// 找到最小值
double find_min_value(double *arr, int size) {
double min = arr[0];
for (int i = 1; i < size; i++) {
if (arr[i] < min) {
min = arr[i];
}
}
return min;
}
```
阅读全文