C 程序动态创建数组并打印元素总和

cserver side programmingprogramming

假设我们有一个数字 n。我们必须动态创建一个大小为 n 的数组并逐个取 n 个数字,然后求和。要创建数组,我们可以使用 stdlib.h 头文件中的 malloc() 或 calloc() 函数。 n 的值也通过 stdin 作为输入提供。

因此,如果输入为 n = 6,且数组元素为 9、8、7、2、4、3,则输出将为 33,因为 9 + 8 + 7 + 2 + 4 + 3 的总和 = 33。

为了解决这个问题,我们将遵循以下步骤 −

  • sum := 0

  • 获取一个输入并将其存储到 n

  • arr := 动态创建大小为 n 的数组

  • 用于初始化 i := 0,当 i < n,更新(将 i 增加 1),执行以下操作:

    • 获取输入并将其存储到 arr[i]

  • 初始化 i := 0,当 i < n 时,更新(将 i 增加 1),执行以下操作:

    • sum := sum + arr[i]

  • return sum

示例

让我们看看下面的实现以便更好地理解 −

#include <stdio.h>
#include <stdlib.h>
int main(){
    int *arr;
    int n;
    int sum = 0;
    scanf("%d", &n);
    arr = (int*) malloc(n*sizeof(int));
    for(int i = 0; i < n; i++){
        scanf("%d", (arr+i));
    }
    for(int i = 0; i < n; i++){
        sum += arr[i];
    }
    printf("%d", sum);
}

输入

6 9 8 7 2 4 3

输出

33

相关文章