#include <stdio.h>
// 合計値を求める関数
void sum(int kosuu, int data[], int* sum_val) {
*sum_val = 0; // 合計値を0で初期化
// 0番目からkosuu番目まで(合計 kosuu+1 個)加算する
for (int i = 0; i <= kosuu; i++) {
*sum_val = *sum_val + data[i];
}
}
int main() {
int data1[] = {10, 15, 8, 30, 7};
int data2[] = {10, 20, 30, 40, 50, 60};
int ans1, ans2;
// 配列1の処理 (サイズ5なので kosuu=4)
sum(4, data1, &ans1);
// 配列2の処理 (サイズ6なので kosuu=5)
sum(5, data2, &ans2);
// 結果の出力(ダンプ代わり)
printf("配列1の合計: %d\n", ans1
); // 期待値: 70 printf("配列2の合計: %d\n", ans2
); // 期待値: 210
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgovLyDlkIjoqIjlgKTjgpLmsYLjgoHjgovplqLmlbAKdm9pZCBzdW0oaW50IGtvc3V1LCBpbnQgZGF0YVtdLCBpbnQqIHN1bV92YWwpIHsKICAgICpzdW1fdmFsID0gMDsgLy8g5ZCI6KiI5YCk44KSMOOBp+WIneacn+WMlgogICAgLy8gMOeVquebruOBi+OCiWtvc3V155Wq55uu44G+44Gn77yI5ZCI6KiIIGtvc3V1KzEg5YCL77yJ5Yqg566X44GZ44KLCiAgICBmb3IgKGludCBpID0gMDsgaSA8PSBrb3N1dTsgaSsrKSB7CiAgICAgICAgKnN1bV92YWwgPSAqc3VtX3ZhbCArIGRhdGFbaV07CiAgICB9Cn0KCmludCBtYWluKCkgewogICAgaW50IGRhdGExW10gPSB7MTAsIDE1LCA4LCAzMCwgN307CiAgICBpbnQgZGF0YTJbXSA9IHsxMCwgMjAsIDMwLCA0MCwgNTAsIDYwfTsKICAgIGludCBhbnMxLCBhbnMyOwoKICAgIC8vIOmFjeWIlzHjga7lh6bnkIYgKOOCteOCpOOCujXjgarjga7jgacga29zdXU9NCkKICAgIHN1bSg0LCBkYXRhMSwgJmFuczEpOwogICAgLy8g6YWN5YiXMuOBruWHpueQhiAo44K144Kk44K6NuOBquOBruOBpyBrb3N1dT01KQogICAgc3VtKDUsIGRhdGEyLCAmYW5zMik7CgogICAgLy8g57WQ5p6c44Gu5Ye65Yqb77yI44OA44Oz44OX5Luj44KP44KK77yJCiAgICBwcmludGYoIumFjeWIlzHjga7lkIjoqIg6ICVkXG4iLCBhbnMxKTsgLy8g5pyf5b6F5YCkOiA3MAogICAgcHJpbnRmKCLphY3liJcy44Gu5ZCI6KiIOiAlZFxuIiwgYW5zMik7IC8vIOacn+W+heWApDogMjEwCgogICAgcmV0dXJuIDA7Cn0=