題名の通り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で質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# カードシャッフルのブログラムを使ってc言語でブラックジャックをしたい 2 2022/04/12 15:13
- JavaScript jsで、switch文で書かれた分をif文にできませんか。 1 2022/07/28 15:10
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- JavaScript セレクトボックスを2つ選択してメッセージなどを表示するには。~運賃検索プログラムを完成させたい~ 1 2022/07/22 11:10
- C言語・C++・C# C++のcase文の書き方 4 2023/02/24 20:50
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- JavaScript 以前の質問だと、どの条件でも配列が表示されてしまいます。 1 2022/07/09 11:40
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- C言語・C++・C# C言語 3 2022/11/09 13:27
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
構造体のメンバをfor文で回したい
C言語・C++・C#
-
break文でループを一気に抜けるには
C言語・C++・C#
-
Enterキーを押されたら次の処理に移るという事をしたい。
C言語・C++・C#
-
-
4
エラーの原因は?「この関数の定義が見つかりません」
C言語・C++・C#
-
5
複数の変数を宣言する時、同時に初期化?できないでしょうか?
Java
-
6
エラーの意味は? Lvalue required
C言語・C++・C#
-
7
char*を初期化したいのですが
C言語・C++・C#
-
8
return trueとreturn falseの用途・違いは・・・?
JavaScript
-
9
init関数の意味
C言語・C++・C#
-
10
適切な変換関数が存在しない???
C言語・C++・C#
-
11
VB.NETで DataRow()を利用して、値からコードを取得したい。
Visual Basic(VBA)
-
12
C言語での引数の省略方法
C言語・C++・C#
-
13
分割コンパイルの#defineについて
C言語・C++・C#
-
14
C言語 exitの使い方
C言語・C++・C#
-
15
C#で配列が空かを判定するには?
C言語・C++・C#
-
16
fgetsなどのときのstdinのバッファを消すには?
C言語・C++・C#
-
17
typedef enumの使い方を教えてください
C言語・C++・C#
-
18
16進数を2文字ずつ配列に格納したい
C言語・C++・C#
-
19
String^の^自体が何を意味しているのか、わかりません。
C言語・C++・C#
-
20
C言語 配列の長さの上限
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語プログラムが理解できなくて…
-
構文エラー";"が型の前にあり...
-
#if 1 #elseの意味について
-
初心者です。for文、if文を使っ...
-
c言語プログラミングで1から100...
-
全角文字の判定
-
getcの改行判定
-
for文の中にswitch文はいれられ...
-
C言語のwhile文を使った素数判...
-
プログラミングで二番目に大き...
-
C言語 数字以外を入力させない...
-
大学のプログラミングのニュー...
-
scanfが実行されません
-
配列を関数に渡す方法
-
scanf関数を用いての加減乗除%...
-
プログラム
-
for文
-
C言語初心者です。次の問題で質...
-
C言語でのトランプシャッフルに...
-
C言語階乗の総和を求める
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
構文エラー";"が型の前にあり...
-
#if 1 #elseの意味について
-
for文の中にswitch文はいれられ...
-
C言語階乗の総和を求める
-
配列を使って魔方陣
-
C言語 数字以外を入力させない...
-
C言語プログラムが理解できなくて…
-
配列を関数に渡す方法
-
初心者です。for文、if文を使っ...
-
scanf関数を用いての加減乗除%...
-
c言語プログラミングで1から100...
-
while文について、c言語...
-
getcの改行判定
-
プログラミングで二番目に大き...
-
VHDLで、case文とwhen文のどち...
-
C言語で電卓を作成する。
-
C言語の二分法のプログラムにつ...
-
プログラミングに関して
-
階乗のプログラム!!
-
C言語についてですfor ifをつか...
おすすめ情報