- 締切済み
条件分岐
以下の条件分岐について教えてください。 条件:str の 文字に ”0.0”や”0000”などの入力があっ た場合、NG_FLAGを返したいのです。 どこがいけないのか、教えてください。 int CheckData2(char *str) { if (str[0] == '0');{ printf("%c", str[0]); if (str[0] == '0' && str[1] == '.'){ puts("CheckData2はOK_FLAG"); return OK_FLAG; } else if (str[0] == '0' && str[1] == '.'){ puts("CheckData2はNG_FLAG;"); return NG_FLAG; } } puts("CheckData2はOK_FLAG"); return OK_FLAG; }
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- crew21
- ベストアンサー率26% (58/222)
No.1さんが言ってるように、 >「”0.0”や”0000”などの入力があった場合」の内容が明確でないこと。 てことだよ。具体的には、0.00とか000.00000とか00とか000000000000000のときは扱う対象にするのかどうかとかってこと。 もしそういう値が入力された場合はどうすんのかってこと。 ていかその前に、キツいこと言って悪いけど、どこから答えればいいかわからんくらいにダメダメなプログラムだよ。 条件分岐がどうとかそんなレベルじゃない。 これ簡潔に教えるのは、やっとよちよち歩きができるようになった子供に、地図と金だけ渡して、3km離れたスーパーでネギ買わせるようなもんだ。 もちっと勉強しな。 ちなみに2つ目のif文の条件と、そのelse ifの条件て同じじゃね? オレの目の錯覚か?
- koko_u_
- ベストアンサー率18% (459/2509)
>どこがいけないのか、教えてください。 「”0.0”や”0000”などの入力があった場合」の内容が明確でないこと。