よろしくお願いします

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
first

よろしくお願いします

#1

投稿記事 by first » 13年前

5つの整数を入力させ、その5つ値を配列に格納し、5つそれぞれを2倍で表示する。
というプログラムを作っているのですが、2倍の表示ができません。
どなたか教えていただけないでしょうか。自分で考えたソースを下に張っておきます。

#include "stdio.h"

int main(void)
{
int i, j, k, l, m, str[5];

printf("整数を5つ入力してください\n");

scanf_s("%d\n", &i);
scanf_s("%d\n", &j);
scanf_s("%d\n", &k);
scanf_s("%d\n", &l);
scanf_s("%d\n", &m);

str[0] = i;
str[1] = j;
str[2] = k;
str[3] = l;
str[4] = m;

for(int n = 0; n < 5; n++){
printf("%d ", str[n] * 2);
}

for(; ;);
return 0;
}

naohiro19
記事: 256
登録日時: 13年前
住所: 愛知県

Re: よろしくお願いします

#2

投稿記事 by naohiro19 » 13年前

scanf_sの引数に\nが入っているのが問題です。

詳しくはscanf_s、_scanf_s_l、wscanf_s、_wscanf_s_lをご覧ください。
最後に編集したユーザー naohiro19 on 2011年6月24日(金) 15:10 [ 編集 1 回目 ]

first

Re: よろしくお願いします

#3

投稿記事 by first » 13年前

ありがとうございました。無事に表示することができました。

アバター
aquashooting
記事: 67
登録日時: 13年前

Re: よろしくお願いします

#4

投稿記事 by aquashooting » 13年前

firstさん、少し質問してもよろしいでしょうか?
最後にあるfor(;;);は、いらないのではないかと思うのですが
どうでしょうか?

first

Re: よろしくお願いします

#5

投稿記事 by first » 13年前

VisualStadioを使っているのですが、for(; ;);を使うとすべての処理を終えても実行画面が消えないんですよね。
ですので、もしfor(; ;);を使わないならば実行して2倍の値が表示されたときにすぐ画面が消えてしまって実行結果がわからないということがありますのでfor(; ;);を使わせていただいてます。

ISLe
記事: 2650
登録日時: 13年前
連絡を取る:

Re: よろしくお願いします

#6

投稿記事 by ISLe » 13年前

first さんが書きました:VisualStadioを使っているのですが、for(; ;);を使うとすべての処理を終えても実行画面が消えないんですよね。
コントロールキーを押しながらF5キーを押して実行しても、すぐにウインドウが閉じてしまうということですか?

閉鎖

“C言語何でも質問掲示板” へ戻る