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