gpt4 book ai didi

c - 如何验证,以便用户只能输入正整数

转载 作者:太空宇宙 更新时间:2023-11-04 05:38:53 28 4
gpt4 key购买 nike

如何使用单个 while 循环来限制负整数输入代码。我之前尝试过为两个 scanf() 使用两个 while 循环,并且效果很好。但我想不出如何将它们组合成一个 while 循环。我已经删除了我最初使用的两个 while 循环。我对此完全陌生,我需要一些想法。

#include <stdio.h>

int main()

{
int num, uplimit, a;

printf("Which multiplication table do you want? ");

scanf("%d",&num);

printf("Please enter the upper limit: ");

scanf("%d",&uplimit);


printf("\nMultiplication Table for %d\n", num);

printf("===========================\n\n");


for(a=1;a<=uplimit;++a)

{

printf( "%d X %d = %d %s\n", a, num, num*a, (num*a % 2 == 0) ? "*" : " " );

}

{

printf("\n* indicates even multiple of %d", num);

}

return 0;
}

最佳答案

只需将您的 scanfs 替换为:

while(scanf("%d", &num) != 1 || num < 0)
while ((c = getchar()) != '\n' && c != EOF);

关于c - 如何验证,以便用户只能输入正整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24972205/

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