moririnn
Posted: 2016年2月13日(土) 22:45
入力された10個のうち大きい数字3つを出力しろというものですが配列を用いたアルゴリズムが全くわかりません。どのように考えたら良いのでしょうか。またどう勉強すれば良いですか??
まあそれくらいは大目に見てあげましょう。今回の問題の本質的なところではないですから。みけCAT さんが書きました: scanfで入力を読み込んだつもりになって、実際に読み込めたかどうかをチェックせずに処理を進めているのはよくないですね。
#include <stdio.h>
#define N (10)
int main(void)
{
int a[N];
int i, j, temp;
for (i = 0; i < N; i++) {
scanf("%d", &a[i]);
}
for (i = 0; i < N - 1; i++) {
for (j = i + 1; j < N; j++) {
if (a[i] < a[j]) {
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
for (i = 0; i < 3; i++) {
printf("%d\n", a[i]);
}
return 0;
}