0-9

2016-04-27 21 views
0

ハロー仲間プログラマ、メイン0-9

INT() intへニブル制限N。

scanf("%d", &n ,); 
printf("nibble = %d%d%d%d", (n/8)%2, (n/4)%2, (n/2)%2 , n%2); 

return 0;} 

これまでにこのコードを作成しましたが、このコードは10進値をニブルに変換します。

これは動作しますが、私は0~9、 の入力をstatemensを使用せずに制限する方法に関して質問があります。それを行う可能性はありますか? 現時点では、コードは0〜15小数を使用しています。例を教えてください。

ありがとうございました!

答えて

0

条件に

を使用せずに可能ではないですが、> 9、小数点がでパットされている場合、あなたのプログラムが何をすべきかを教えて?

scanf("%d", &n ,); 
if ((n>=0) && (n<10)) 
    printf("nibble = %d%d%d%d", (n/8)%2, (n/4)%2, (n/2)%2 , n%2); 
else 
    printf("err: input out of range"); 
+0

でも、条件を指定しても可能な場合がありますか? – Sali

+0

niceありがとうございました。&&は2行目の真ん中で、n> 0とn <10の両方の入力を安全にしますか? – Sali

+0

私は上記の例を追加しました。ところで、あなたはnを "int"と宣言しました。これは、大部分のコンパイラでは、署名されたvarです。 "unsigned int"と書くと、最初のサブ条件(n> = 0)を取り除くことができます。 – user3336433

関連する問題