我的任务是编写一个代码,接收 0 到 7 之间的数字(包括边)并将其转换为二进制补码的 4 位二进制代码。
我的代码一切正常。它有效并且计算很好。 但我想通过限制用户输入 0-7 以外的数字来让事情变得更好。 现在用户可以输入他们想要的任何数字,但这在转换系统中没有意义......
我该怎么做?
谢谢...
最佳答案
你可以这样做
#include <stdio.h>
int main(void)
{
unsigned int digit;
while ( scanf( "%u", &digit ) != 1 || 7 < digit )
{
scanf( "%*[^\n]" );
}
printf( "digit = %u\n", digit );
return 0;
}
如果输入的是
A
8
5
那么输出是
digit = 5
关于c - 强制 scanf ("") 只接收数字 0-7,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58767661/