電子書籍の厳選無料作品が豊富!

この列挙体でsysjanの関数はあっていますか?
大至急よろしくお願いいたします
typedef enum janken {
Gu = 0, Choki = 2, Pa = 5}JPON;

JPON sysjan(int sainome) {

int pon;

switch(sainome)

{

case 1:pon = 0; break;

case 2:pon = 0; break;

case 3:pon = 2; break;

case 4:pon = 2; break;

case 5:pon = 5; break;

case 6:pon = 5; break;

}

return((JPON)pon);
}

A 回答 (1件)

だから前書いたけど無駄が多い。



JPON sysjan(int sai) {
 switch(sai) {
  case 1: case 2:
   return Gu;
  case 3: case 4:
   return Choki;
  default:
   return Pa;
 }
}

この問題:

https://oshiete.goo.ne.jp/qa/12336707.html

は学生が回り道してメンド臭くなるように誘導してるようだけど、あまりにみっともなくそういう誘導に引っかからない事。

1. いくつかの条件で結果が同じな場合のswitch文の簡易な書き方を知ること。
2. せっかく列挙体で型を定義してるならそれをそのまま上手く利用すること。
3. breakとreturnを上手に使う事。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!