# C 程序：使用数组计算平均值

> 原文： [https://www.programiz.com/c-programming/examples/average-arrays](https://www.programiz.com/c-programming/examples/average-arrays)

#### 在此示例中，您将学习计算用户使用数组输入的 n 个元素的平均值。

要理解此示例，您应该了解以下 [C 编程](/c-programming "C tutorial")主题：

*   [C `while`和`do...while`循环](/c-programming/c-do-while-loops)
*   [C `for`循环](/c-programming/c-for-loop)
*   [C 数组](/c-programming/c-arrays)

* * *

## 使用数组存储数字并计算平均值

```c
#include <stdio.h>
int main() {
    int n, i;
    float num[100], sum = 0.0, avg;

    printf("Enter the numbers of elements: ");
    scanf("%d", &n);

    while (n > 100 || n < 1) {
        printf("Error! number should in range of (1 to 100).\n");
        printf("Enter the number again: ");
        scanf("%d", &n);
    }

    for (i = 0; i < n; ++i) {
        printf("%d. Enter number: ", i + 1);
        scanf("%f", &num[i]);
        sum += num[i];
    }

    avg = sum / n;
    printf("Average = %.2f", avg);
    return 0;
} 
```

**输出**

```c
Enter the numbers of elements: 6
1\. Enter number: 45.3
2\. Enter number: 67.5
3\. Enter number: -45.6
4\. Enter number: 20.34
5\. Enter number: 33
6\. Enter number: 45.6
Average = 27.69 
```

* * *

在此，首先要求用户输入元质数。 该编号被分配给`n`。

如果用户输入的整数小于 1 或大于 100，则要求用户再次输入数字。 这是通过`while`循环完成的。

然后，我们将`i = 0`循环从`i = 0`循环到`i < n`。 在循环的每次迭代中，都要求用户输入数字以计算平均值。 这些数字存储在`num[]`数组中。

```c
scanf("%f", &num[i]); 
```

并且，计算每个输入元素的总和。

```c
sum += num[i]; 
```

`for`循环完成后，将计算平均值并将其打印在屏幕上。