gpt4 book ai didi

c - 如何编写 scanf 的条件,使其仅接受包含零但不包含字母的整数输入?

转载 作者:行者123 更新时间:2023-11-30 19:25:31 24 4
gpt4 key购买 nike

我有这个 scanf 函数:

scanfResult = scanf("%s%d%d", X, &LO, &HI);

我需要编写一个条件,只接受 scanf 函数中第二个和第三个位置的整数(即 %d 所在的位置),而不接受任何字母。我可以写这样的东西:

if (HI == 0 || LO == 0){
printf("Wrong input.\n");
return 0;
}

但是它不接受 int "0"作为输入,而我想接受。如何编写一个条件,使其接受零但不接受任何字母? (我是初学者)

我的输入是:

c 45 abc

最佳答案

您可以将 while 循环与 getchar() 一起使用。输入允许的字母表的代码。像这样的东西

while (1)  {
ch = getchar();
// if ch is <enter key > the break
if (policyOK( ch ) ) {
printf("%c", ch );
} else {
// print a beep sound or don't do anything
}
}

关于c - 如何编写 scanf 的条件,使其仅接受包含零但不包含字母的整数输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58664684/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com