c语言定义一个函数求三个double数的平均值。要求写出函数定义,并在main函数中输入三个数,进行函数调用,输出结果
时间: 2023-04-07 08:05:15 浏览: 147
函数定义如下:
double average(double a, double b, double c) {
return (a + b + c) / 3;
}
在main函数中,输入三个double数,调用average函数,输出结果:
double a, b, c;
printf("请输入三个double数:\n");
scanf("%lf %lf %lf", &a, &b, &c);
double result = average(a, b, c);
printf("三个数的平均值为:%lf\n", result);
相关问题
c语言写一函数实现求4个整数中最大的数及平均值,主函数输入数据,并调用函数完成该功能。
下面是一个实现该功能的C语言程序:
```c
#include <stdio.h>
// 函数声明
void max_and_avg(int a, int b, int c, int d, int *max, double *avg);
int main() {
int a, b, c, d;
int max;
double avg;
// 输入数据
printf("请输入4个整数:\n");
scanf("%d%d%d%d", &a, &b, &c, &d);
// 调用函数求解最大值和平均值
max_and_avg(a, b, c, d, &max, &avg);
// 输出结果
printf("最大值为:%d\n", max);
printf("平均值为:%.2f\n", avg);
return 0;
}
// 函数定义
void max_and_avg(int a, int b, int c, int d, int *max, double *avg) {
// 求解最大值
*max = a;
if (b > *max) {
*max = b;
}
if (c > *max) {
*max = c;
}
if (d > *max) {
*max = d;
}
// 求解平均值
*avg = (a + b + c + d) / 4.0;
}
```
该程序中,我们首先在主函数中输入4个整数,然后调用`max_and_avg`函数求解最大值和平均值,并将结果保存在`max`和`avg`变量中。最后,我们在主函数中输出最大值和平均值。`max_and_avg`函数采用指针参数的方式返回最大值和平均值,这样可以避免函数返回多个值的问题。
用c语言定义一个指针函数求任意n的平均值
```c
#include <stdio.h>
double* average(int arr[], int n) {
static double result[2]; // 定义一个静态数组,存储平均值和元素个数
int sum = 0;
for (int i = 0; i < n; i++) {
sum += arr[i];
}
result[0] = (double)sum / n; // 计算平均值
result[1] = n; // 存储元素个数
return result; // 返回指向result数组的指针
}
int main() {
int arr[] = { 1,2,3,4,5 };
int n = sizeof(arr) / sizeof(arr[0]);
double* p = average(arr, n);
printf("平均值为%.2lf,元素个数为%d\n", *p, (int)*(p + 1));
return 0;
}
```