半字节限制为0-9

时间:2016-04-27 15:42:46

标签: converter restriction nibble

Hello其他程序员,

int main() int n;

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

return 0;}
到目前为止,我已经构建了这段代码,代码将十进制值转换为半字节。

它有效,但我对如何将输入限制为0-9有疑问, 不使用if statemens。有没有可能做到这一点,如果如何? 目前代码使用0 - 15十进制。你可以给我一个例子或解释给我,以便我能理解它。

谢谢!

1 个答案:

答案 0 :(得分: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");