-9999~9999において、入力した数字に対応した日本語のローマ字を出力したいが、数を入力すると2桁以上の場合はローマ字が表示されない場合と、1桁の場合は入力した数字より大きい数の読み方すべてが表示されてしまう。
実行イメージ
2306
ni sen san hyaku roku
-3145
minus san sen hyaku yon ju go
#include <stdio.h> int main(){ int n = 0; scanf("%d", &n); if (n < -10000 || n > 10000){ printf("Input range is -9999 to 9999 "); }else { switch(n){ case 0: printf("zero"); case 1: printf("ici"); case 2: printf("ni"); case 3: printf("san"); case 4: printf("yon"); case 5: printf("go"); case 6: printf("roku"); case 7: printf("nana"); case 8: printf("hachi"); case 9: printf("kyu"); case 10: printf("ju"); case 100: printf("hyaku"); case 1000: printf("sen"); case '-': printf("minus"); } } }
入門サイトやリファレンスでswitch文の使い方を学習してはいかがでしょうか。
回答2件
あなたの回答
tips
プレビュー