嗨,我是学习编写 c 的初学者,我想知道您将如何编写一个代码,提示您提供一个正整数并在您输入 0 并且 0 之前的前面的数字至少是 2 个正整数后结束。然后程序确定最大的正整数输入和最小的整数输入。
#include <stdio.h>
int main(void)
{
int integer=0, largest_int, smallest_int;
while (integer) {
printf("Please enter a positive integer: \n");
scanf("%d", &integer);
if (integer = 0) {
while (integer<=0) {
printf("Please enter a positive integer: \n");
scanf("%d", &integer);
if (integer>0) {
printf("Please enter a positive integer: \n");
scanf("%d", &integer);
if (integer>0) {
printf("the largest integer is.....and the smallest integer is......");printf("Please enter a positive integer: \n");
break;
}
else {
printf("Please enter a positive integer: \n");
scanf("%d", &integer);
}
}
}
}
}
return 0;
}
起初我尝试使用 do/while 循环,但它根本不起作用。
当循环中有 if ese 语句时,我也对编译器如何读取循环感到困惑。
这就是我的想法:我想过让“输入正整数”重复询问,直到你输入两个正数。然后我会让程序检查下一个输入是否等于零,如果不等于;然后它会再次继续循环。如果用户确实输入了至少两个正整数,然后输入了一个零,则循环中断,我打印出最大的 int 和最小的 int。还让我感到困惑的是,您如何能够过滤所有用户的输入并确定这些值,因为我可以继续输入整数 100000000000000000000 次,并且在所有这些时间之外我怎么知道?