#include <stdio.h>
int main(void)
{
int a;
scanf("%d",&a);
switch(a)
{
case 1: printf("\nりんご\n"); break;
case 2: printf("\nバナナ\n"); break;
default: printf("\nその他\n"); break;
}
return 0;
}
C言語でプログラム練習しています
上の内容で正常に動くのですが
caseのところを例えば
1~10までは りんご
11~30までは バナナ
など1つの数字ではなく複数の数字にしたいのですがどうすればいいのでしょうか?
以前VBを少し経験したことがありまして
その際は
case 1 to 10
でできたのですがC言語ではできないみたいです
わかる方教えてください
No.1ベストアンサー
- 回答日時:
1から5がバナナ、6から10がりんご としたい場合
switch( a ) {
case 1:
case 2:
case 3:
case 4:
case 5:
printf("バナナ\n" );
break;
case 6:
case 7:
case 8:
case 9:
case 10:
printf("りんご\n");
break;
}
といった具合にしてやればいいですよ
飛んだ値でも可能です
1,3,5がバナナ 2,4,6がりんごならば
switch( a ) {
case 1:
case 3:
case 5:
printf("バナナ\n" );
break;
case 2:
case 4:
case 6:
printf("りんご\n");
break;
}
といった具合にします
caseを連続して記述して breakを最後のブロックだけに記述します
No.6
- 回答日時:
#define MAX 50
int table[MAX + 1] = {
0, /* ダミー */
1,1,1,1,1,1,1,1,1,1, /* 1~10りんご */
2,2,2,2,2,2,2,2,2,2, /* 11~30ばなな */
2,2,2,2,2,2,2,2,2,2,
3,3,3,3,3,4,4,4,4,4, /* 31~35みかん、36~40なし */
5,5,5,5,5,5,5,5,5,5 /* 41~50ぶどう */
};
/* aは1~50 */
switch(table[a]) {
case 1:
りんご
break;
case 2:
ばなな
break;
case 3:
みかん
break;
case 4:
なし
break;
case 5:
ぶどう
break;
}
No.4
- 回答日時:
#include <stdio.h>
int main(void)
{
int a;
scanf("%d",&a);
switch(cnvNo(a))
{
case 1: printf("\nりんご\n"); break;
case 2: printf("\nバナナ\n"); break;
default: printf("\nその他\n"); break;
}
return 0;
}
int cnvNo(int a)
{
if ((a >= 1) && (a <= 10))
{
return(1);
} else if ((a >= 11) && (a <= 30)) {
return(2);
}
return(-1);
}
No.3
- 回答日時:
#include <stdio.h>
int main(void)
{
int i;
for(i = 0; i < 40; ++ i){
switch((1 <= i && i <= 30) + (11 <= i && i <= 30)){
case 1: printf("%2d りんご\n", i); break;
case 2: printf("%2d バナナ\n", i); break;
default: printf("%2d その他\n", i); break;
}
}
return 0;
}
No.2
- 回答日時:
case 1:
case 2:
~
case 10:printf ("...");break;
のようにbreakしなければ求めてることは可能でしょう
長くなるようならif else使った方が見やすいと思います
お薦めはしませんがgcc拡張ではcase 0 ... 10のような書き方が可能です
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# カードシャッフルのブログラムを使ってc言語でブラックジャックをしたい 2 2022/04/12 15:13
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- C言語・C++・C# C++のcinの動作 5 2023/02/26 00:13
- C言語・C++・C# 至急教えてください!プログラミングの問題です。 割られる整数と割る整数を受け取って、商と余りを出力す 3 2022/07/05 10:23
- C言語・C++・C# C言語階乗の総和を求める 2 2023/03/04 23:31
- C言語・C++・C# c言語配列の結合についてです。 なぜうまくいかないのでしょうか。 #include <stdio.h 4 2022/05/30 22:42
- C言語・C++・C# c言語でユーザ関数を利用して複素数のべき乗と絶対値の数列を計算するプログラムが作りたいです。 3 2023/01/29 22:13
- C言語・C++・C# 至急教えてください! プログラミングの問題です! お願いします! 出力2と全く同じ出力をするように、 2 2022/06/22 23:10
このQ&Aを見た人はこんなQ&Aも見ています
-
好きなおでんの具材ドラフト会議しましょう
肌寒くなってきて、温かい食べ物がおいしい季節になってきましたね。 みなさんはおでんの具材でひとつ選ぶなら何にしますか? 1番好きなおでんの具材を教えてください。
-
秘密基地、どこに作った?
小さい頃、1度は誰もが作ったであろう秘密基地。 大人の今だからこそ言える、あなたの秘密基地の場所を教えてください!
-
初めて自分の家と他人の家が違う、と意識した時
子供の頃、友達の家に行くと「なんか自分の家と匂いが違うな?」って思いませんでしたか?
-
プリン+醤油=ウニみたいな組み合わせメニューを教えて!
プリンと醤油を一緒に食べると「ウニ」の味がする! というような意外な組み合わせから、新しい味になる食べ物って色々ありますよね。 あなたがこれまでに試した「組み合わせメニュー」を教えてください。
-
14歳の自分に衝撃の事実を告げてください
タイムマシンで14歳の自分のところに現れた未来のあなた。 衝撃的な事実を告げて自分に驚かせるとしたら何を告げますか?
-
switch の範囲指定
C言語・C++・C#
-
switch()文で値の大小比較
PHP
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コンパイルエラーについて
-
4の倍数を論理演算で表す。。
-
cshの文字列操作(0埋め)
-
printf で二進表示を行いたい。
-
WM_CLOSEで閉じれないウィンド...
-
10個出力で改行したいのですが...
-
ブラックジャック
-
%P と %X の違い
-
wsprintfの書式制御文字列につ...
-
C言語で四則演算を使って結果が...
-
Visual Sutdio 2017 でのC言語...
-
c言語でAからZまでを表示する...
-
入力したお金の金額からお札の...
-
error C2143: 構文エラー : ';'...
-
エラーが出ます。
-
(C言語)めちゃくちゃな値にな...
-
C言語に関する質問です
-
printf( " %2d", p * q );
-
プログラム(C言語)
-
プログラミングでわからないと...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
10個出力で改行したいのですが...
-
CTRL+Dでループを抜けるには
-
printf で二進表示を行いたい。
-
【C言語教えてください】sin波...
-
コンパイルエラーについて
-
c言語でAからZまでを表示する...
-
4の倍数を論理演算で表す。。
-
台形の面積を求めるプログラム
-
8人分のテストの点数を入力し、...
-
コマンドラインに出力した文字...
-
switch分のケースを範囲数?に...
-
(C言語)めちゃくちゃな値にな...
-
テキストカーソル位置の取得
-
strcmp
-
defineで定数が置き換えられな...
-
WM_CLOSEで閉じれないウィンド...
-
%P と %X の違い
-
cshの文字列操作(0埋め)
-
円の面積を求めるプログラミン...
-
printfの出力内の文字をdefine...
おすすめ情報