
題名の通りfor文の中にswitch文はいれられないのでしょうか?
例えばの例ですが、
for(i=1;i<3;i++){
switch (i) {
case 1:
printf("←\r");
Sleep(400);
break;
case 3:
printf("↑\r");
Sleep(400);
break;
default:
printf("others\n");
break;
}
}
このようなプログラムはかけないのでしょうか。
実行すると何も表示されないのですが、どこかおかしいのでしょうか??
どなたかご指導お願いします><
No.3ベストアンサー
- 回答日時:
fflush(stdout)する以外にも、setbuf(stdout,NULL)する手もあります。
今回の場合外側のループでtypoしたとのことですが2重ループにしなくても、良かったのではないでしょうか?たとえば下記の通り。
-- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< --
int i;
setbuf(stdout,NULL);
for (i = 1; i < 3000; i++) {
Sleep(400);
switch (i%3) {
case 0:
printf("↑r");
break;
case 1:
printf("→\r");
break;
case 2:
printf("↓\r");
break;
case 3:
printf("←\r");
break;
default:
printf("others\n");
break;
}
}
No.2
- 回答日時:
for の中に switch は入れられます。
case 3:
は、実行されないと思う。
#1の方も言ってるけど、フラッシュすればいいと思う。
ガーーーーーン!
for(i=0;i>10;i++){
}
になってるだけでした:;;;
↑「i>10」
fflushの使い方勉強しました!
解決しました、#1さま、#2さまありがとうございました!
No.1
- 回答日時:
プリント文で出すのは、スプールが溜まったらですから、余計なsleep外すか、fflush();を使います。
その前に、\rって何の意味だろう?
\n(改行コード)の間違いかな?
参考URL:http://www.paw.hi-ho.ne.jp/takadayouhei/technic/ …
この回答への補足
ご回答ありがとうございます。
\rは先頭に戻って記述を行うものです。
http://www1.bbiq.jp/kougaku/c_samples.html
さんの「キター」を実行していただけたらよく解ると思います。
上記はあくまで例でSleepは私の行いたい処理に必要なものでして・・。
よく書き方がわからないですが、fflushの使い方を勉強してみます!#2さんもありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
#if 1 #elseの意味について
-
構文エラー";"が型の前にあり...
-
getcの改行判定
-
for文の中にswitch文はいれられ...
-
配列を関数に渡す方法
-
C言語 数字以外を入力させない...
-
while文を使った問題なのですが...
-
for文について
-
最早開始時間と最遅完了時刻を...
-
Aの値からBの値を除するとは??
-
信頼区間の1.96や1.65ってどこ...
-
#define _CRT_SECURE_NO_WARNIN...
-
C言語 エラーの原因がわからな...
-
値差の%計算方法について
-
数字以外が入力されたらエラー...
-
「Aに対するBの割合」と「Aに対...
-
VB6.0での小数点の扱いについて
-
【C++】関数ポインタの使い方
-
c languageで 簡単な質問があ...
-
ある商品のロス率を5%見込み、...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
#if 1 #elseの意味について
-
構文エラー";"が型の前にあり...
-
for文の中にswitch文はいれられ...
-
配列を使って魔方陣
-
C言語 数字以外を入力させない...
-
10進数からN進数に変換するプロ...
-
配列を関数に渡す方法
-
scanfが実行されません
-
C言語で電卓を作成する。
-
C言語・最大値を算出するプロ...
-
C言語階乗の総和を求める
-
実行すると if文 に矛盾
-
計算結果がlong型以上になる場...
-
C言語プログラム
-
C言語。どうしてコンパイルでき...
-
c言語for文
-
getcの改行判定
-
C言語で勉強中(max,min)の出し方
-
C言語 プログラム
-
SIGALRMでプロセス終了
おすすめ情報