动态创建一个数组,输入10型变量,求平均值,并将平均值的所有数输出,用c语言函数
时间: 2024-09-23 19:09:46 浏览: 49
C语言中数组作为函数的参数以及返回值的使用简单入门
在C语言中,动态创建数组并计算其元素的平均值需要使用`malloc()`来分配内存以及一些基本的数学运算。下面是一个简单的示例,假设我们要存储整数类型的变量:
```c
#include <stdio.h>
#include <stdlib.h>
// 动态创建数组并计算平均值的函数
double calculate_average(int* arr, int size) {
double sum = 0;
for (int i = 0; i < size; i++) {
sum += arr[i];
}
return sum / size;
}
void print_array(double avg, int count) {
printf("Average is: %.2f\n", avg);
for (int i = 0; i < count; i++) {
printf("%.2f ", arr[i]); // 注意,此处的arr实际不存在,这里只是为了展示如何输出,你需要在实际程序中初始化它
}
printf("\n");
}
int main() {
// 输入数组大小
int n;
printf("Enter the number of elements: ");
scanf("%d", &n);
// 动态分配内存
int* dynamic_arr = (int*) malloc(n * sizeof(int));
// 获取用户输入并填充数组
printf("Enter %d numbers:\n", n);
for (int i = 0; i < n; i++) {
scanf("%d", &dynamic_arr[i]);
}
// 计算平均值
double avg = calculate_average(dynamic_arr, n);
// 输出平均值和数组元素
print_array(avg, n);
// 释放动态内存
free(dynamic_arr);
return 0;
}
```
在这个例子中,`calculate_average`函数计算数组元素之和然后除以元素个数得到平均值,`print_array`函数用于输出平均值和数组内容。记得在完成操作后,要用`free()`函数释放动态分配的内存,避免内存泄漏。
阅读全文