用C语言做程序时怎样禁止用户输入非数字字符,不是等用户输入之后再判断,而是压根就输入不进去!

2024-05-30 04:29:33
推荐回答(4个)
回答(1):

这是不可能的,只有你点击之后才知道是非数字字符,
你可以用getch()来获取字符,同时该字符不会显示在控制台上,然后判断该字符是否数字,如果是数字,你可以putchar该字符,这样子看上去就可以达到你要的效果

回答(2):

给你一段示例代码吧:

#include
#include
#include

int main()
{
char buffer[100] = {0};
int c, index = 0;
while (c = getch(), c != 13)
{
if (isdigit(c))
{
buffer[index++] = c;
putchar(c);
}
}
printf("\nyour input: %s\n", buffer);
return 0;
}

回答(3):

键盘映射,把abc等键位映射成无意义的键码

回答(4):

isdigit()函数判断是否为数字
函数原型 int digit(int n) 返回值 1表示真 0表示假