int 型の配列を引数として渡されると、その配列中の最小値の2倍より大きな偶数の和 を返す関数を作りたいです。
以下のようなプログラムを書いたのですが、上手くいきません。
どこが間違えているのでしょうか?
#include <stdio.h> #define N 10 int sum(int a[N]) { int i, max, min, x, sum; min = 10000; for (i = 0; i < N; i++) { if (a[i] < min) { min = a[i]; } } x = min * 2; sum = 0; for (i = 0; i < N; i++) { if (a[i] % 2 == 0 && a[i] > x){ sum += a[i]; } } return sum; } int main(void) { int i,a[N]; for(i = 1; i < N; i++) { printf("a[%1d] = ? ", i); scanf("%d", &a[i]); } printf("sum = %4d\n", sum(a)); return 0; }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/08/15 07:05