5つ分の配列を用意し、乱数を入力。
入力した結果と最小値を出力
乱数をどのように入れればいいですか?
[code c言語]
#include <stdio.h>
int main(void)
{
int i;
int min;
int a[5];
for (i = 0; i < 5; i++)
{
printf("%d個目の実数を入力せよ: ", i + 1);
scanf("%d", &a);
}
min = a[0];
for (i = 1; i < 5; i++)
{
if (a < min) min = a;
}
printf("\n\n入力されたのは %d,%d,%d,%d,%d\n", a[0],a[1],a[2],a[3],a[4]);
printf("\nこの中の最小値は %d です。\n", min);
return 0;
}
[/code]
乱数の場所
Re: 乱数の場所
このfor文の直前あたりで乱数のための初期化を1回だけ行ないます。
このscanfのかわりに、乱数を発生させる関数を使って、aに値を入れます。
仮に配列の要素が1000個の場合でも、このように書きますか?本題とはあまり関係ないですけど。
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。
プログラムは思ったとおりには動かない。書いたとおりに動く。
Re: 乱数の場所
オフトピック
anko さんが書きました: printf("%d個目の実数を入力せよ: ", i + 1);
scanf("%d", &a);
プログラム上は整合が取れているから問題は無いのだが、
どうして「実数を入力せよ」と出力しているのに実際に受け取る入力は整数に限定されているのだろうか…?
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)