c语言一维数组求和求平均值,找出比平均值大的并输出
时间: 2024-09-07 16:05:32 浏览: 86
在 C 语言中,首先我们需要定义一个一维数组,并计算其总和和平均值。然后遍历数组,找出那些大于平均值的元素并输出。以下是简单的步骤和代码示例:
1. 定义数组和长度:
```c
#include <stdio.h>
#define SIZE 5 // 假设数组大小为5
int main() {
int arr[SIZE]; // 定义整数数组
int sum = 0; // 初始化数组和为0
float avg; // 初始化平均值浮点变量
}
```
2. 输入数组元素:
```c
for (int i = 0; i < SIZE; i++) {
scanf("%d", &arr[i]); // 用户输入数组元素
sum += arr[i];
}
```
3. 计算平均值:
```c
avg = (float)sum / SIZE; // 将总和转换为浮点数除以数组长度得到平均值
```
4. 遍历数组并判断是否大于平均值:
```c
printf("平均值为: %.2f\n", avg); // 输出平均值
for (int i = 0; i < SIZE; i++) {
if (arr[i] > avg) {
printf("%d 大于平均值\n", arr[i]);
}
}
```
相关问题
c语言二维数组行平均怎么求
在C语言中,计算二维数组每一行的平均值,你需要遍历整个数组,对每行的所有元素求和,然后除以该行的元素个数。以下是一个简单的示例:
```c
#include <stdio.h>
// 定义二维数组
#define ROWS 3
#define COLS 4
int arr[ROWS][COLS] = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}
};
// 函数用于计算并打印行平均值
void calculate_row_average(int arr[][COLS], int rows) {
for (int i = 0; i < rows; i++) {
int sum = 0;
for (int j = 0; j < COLS; j++) {
sum += arr[i][j];
}
double average = (double) sum / COLS;
printf("Row %d average: %.2f\n", i+1, average);
}
}
int main() {
calculate_row_average(arr, ROWS);
return 0;
}
```
在这个例子中,`calculate_row_average`函数接受一个二维数组和行数作为参数。内部两层循环分别用于累加每一行的元素之和和计算平均值。运行这个程序会输出每个行的平均值。
用c语言写二维数组的循环输入,循环输出,并求和和平均值
好的,以下是一个示例程序,可以实现您所需的功能:
```c
#include <stdio.h>
#define ROWS 3 // 定义行数
#define COLS 4 // 定义列数
int main() {
int arr[ROWS][COLS]; // 声明二维数组
int sum = 0; // 总和
float avg; // 平均值
// 循环输入
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
printf("请输入第 %d 行,第 %d 列的数值:", i + 1, j + 1);
scanf("%d", &arr[i][j]);
sum += arr[i][j]; // 求和
}
}
avg = (float)sum / (ROWS * COLS); // 求平均值
// 循环输出
printf("二维数组的内容为:\n");
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
printf("%d ", arr[i][j]);
}
printf("\n");
}
printf("二维数组的总和为:%d\n", sum);
printf("二维数组的平均值为:%f\n", avg);
return 0;
}
```
这个程序会先让用户输入一个 3 行 4 列的二维数组,然后循环输出数组中的每个元素,并计算出它们的总和和平均值。注意,为了能够正确计算平均值,我们需要将总和除以二维数组中元素的个数,也就是 `ROWS * COLS`。
阅读全文