ページ 1 / 1
無題
Posted: 2010年10月31日(日) 13:00
by xft
急いでいます。
C言語で以下の課題(2つ)のプログラムのソースがわからないもで教えてください。
(terapadとcygwinをしようします。)
 (1)1文字を入力して、下のデータのうちaのときAmerica以下japanまで、bのときBritain以下japanまで、cのときCanada以下japanまで、dのときDenmark以下japanまで、それ以外のときjapanと表示するプログラムをつくれ。ただし、switch~case文を用い、break文は使わないこと。
Re:無題
Posted: 2010年10月31日(日) 13:09
by バグ
急いでいるのは分かりますが、原則として『課題の丸投げ』は禁止されています。
なので、『自分ではどこまでやったのか?(できているところまで公表する)』、『具体的に何が分からないのかを絞り出す』、そのうえで『何もかも分からない』のであれば、課題を出題した人(先生?)に質問しにいった方がいいですよ。
Re:無題
Posted: 2010年10月31日(日) 13:51
by へろりくしょん
break 文を使わないって不思議な制限ですね。 さっぱり意図が分かりません。
下のデータとは何でしょう。
America以下japanまで、表示すると言う意味でしょうか?
何をしたいのかさっっぱり分かりません。
Re:無題
Posted: 2010年10月31日(日) 14:00
by たいちう
> break 文を使わないって不思議な制限ですね。 さっぱり意図が分かりません。
breakがないとどのように動くか知っていますか?
たまにcaseとbreakが1対1で対応していない正しいプログラムがありますよ。
ですので出題者の意図は理解できます。
(課題として適切かどうかは分かりませんが)
Re:無題
Posted: 2010年10月31日(日) 14:02
by たかぎ
America, Britain, Canada, Denmarkは大文字で始まっているのに、japanだけは小文字で始まっていますね。
もしかして、America等は国名だけれども、japanだけは一般名詞で「漆」のいみなのでしょうか?
Re:無題
Posted: 2010年10月31日(日) 14:26
by へろりくしょん
>breakがないとどのように動くか知っていますか?
>たまにcaseとbreakが1対1で対応していない正しいプログラムがありますよ。
>ですので出題者の意図は理解できます。
もちろん知っています。 私自身も、あえて書かない事がたまにあります。
しかし、使ってはならないとあえて明記する理由がさっっっぱり分かりません。
Re:無題
Posted: 2010年10月31日(日) 15:06
by ISLe
> しかし、使ってはならないとあえて明記する理由がさっっっぱり分かりません。
switch (c) {
case 'a':printf("America\nBritain\nCanada\nDenmark\njapan\n");break;
case 'b':printf("Britain\nCanada\nDenmark\njapan\n");break;
case 'c':printf("Canada\nDenmark\njapan\n");break;
case 'd':printf("Denmark\njapan\n");break;
default:printf("japan\n");
}
こういうのを正解にしたくないからではないでしょうか。
Re:無題
Posted: 2010年10月31日(日) 15:07
by ゆーずぃ
>へろりさん
色々と実験をさせて一つ一つ体で覚えさせようっていう意図だと思いますよ~
ただ、出題者の教えがちゃんとなっていないせいで丸投げという意味のない結果になっちゃってますけど。