C統合・質問スレッドat TECHC統合・質問スレッド - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト150:デフォルトの名無しさん 04/05/17 02:27 >>149 ポインタへのポインタをつくります。 151:デフォルトの名無しさん 04/05/19 16:18 http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1060403548&res=63 にはってある二つのソースは sosuu[]=2;の配列の中の数字が違うのですが、 sosuu[0]を最初の配列として使用すると 最後に素数を表示するときになって 2番目の素数は1311096です。 と表示されてしまいます。 なぜなんでしょうか? 152:151 04/05/19 18:29 すいません、どなたもいらっしゃらないようなので あげますね 153:デフォルトの名無しさん 04/05/19 18:53 >>152 sosuu[1]に何も値を代入してないから。 > sosuu[n+1] = sosuukouho; と > m += 1; の間に printf("n = %d, m = %d, sosuu[%d] = %d\n", n, m, n+1, sosuu[n+1]); を入れて確認してみ 154:151 04/05/19 19:13 >>153さんわかりました。 if((sosuukouho % sosuu[n] != 0) && (n == m)) の部分の (n==m)ここが原因だったんですね (n==m-1)としたら直りました。 ここが影響したので printf("素数の数は%d個で、最後の素数は%dです。\n",m,sosuu[m]); を printf("素数の数は%d個で、最後の素数は%dです。\n",m,sosuu[m-1]); になおして無事意図したとおりに動くようになりました。 ありがとうございました。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch