C語言動態建立陣列並列印元素和
假設我們有一個數字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的陣列
for i := 0 to n-1 do
輸入一個數值並將其儲存到arr[i]
for i := 0 to n-1 do
sum := sum + arr[i]
返回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
廣告