プロが教えるわが家の防犯対策術!

プログラミングです。
行列要素の数値の総和と平均値を計算する関数sum_aveを作成したいです。
カーソルを合わせている6行目と13行目に何が入るか分かりません。有識者の方に教えて欲しいです。

https://gyazo.com/fdf1cee53a23fd5322788517d689180a

A 回答 (2件)

こちらでどうでしょうか。


https://gyazo.com/1e924d6a74a12dafe3f0b53a898127ef

実行結果
sum= 45, average= 5.00
    • good
    • 1
この回答へのお礼

実行結果まで丁寧にありがとうございます。

お礼日時:2021/07/29 15:39

> 行列要素の数値の総和と平均値を計算する関数



正直言うと、数学的に「行列要素の総和」とか「行列要素の平均値」って何も意味が無い気がするんですが・・・。
それはさておき、ぶっちゃけ、写真に写ってるプログラムも「なんだかなぁ・・・」っつー構造にしか見えませんが、まぁ、言われた通りやれば次のようになるんじゃないんですか?
知らんけど。

/* ここから */

#include <stdio.h>
#define NROW 3
#define NCOL 3

void sum_ave(int x[][NCOL], int* s, double* ave) {
 *s = 0;
 for (int i = 0; i < NROW; i++) {
  for (int j = 0; j < NCOL; j++) {
   *s += x[i][j];
  }
 }
 *ave = *s / (NROW * NCOL);
}

int main(void) {
 int sum;
 double average;
 int a[NROW][NCOL] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} };
 sum_ave(a, &sum, &average);
 printf("sum = %d, average = %.2f\n", sum, average);
 return 0;
}
    • good
    • 1
この回答へのお礼

ありがとうございます。

お礼日時:2021/07/29 15:38

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!