在C语言中,停止输入通常意味着结束从标准输入(通常是键盘)读取数据的操作。这通常通过检测一个特定的输入条件来实现,如一个特殊的EOF(文件结束)标记,或者当读取某些特定的值时结束循环。
以下是几种可能的解决方案:
- 使用EOF(End Of File)作为停止输入的信号。在终端中,你可以通过组合键Ctrl+D(在Unix/Linux中)或者Ctrl+Z(在Windows中)来发送EOF。
cint num;
while (scanf("%d", &num) != EOF) {
printf("You entered: %d\n", num);
}
printf("End of input\n");
- 如果你知道何时停止输入,例如当输入的数字小于0时,你可以这样做:
cint num;
printf("Enter numbers (<0 to stop): ");
while (scanf("%d", &num) == 1 && num >= 0) {
printf("You entered: %d\n", num);
}
printf("End of input\n");
- 如果你想在输入字符串时停止输入,你可以检查特定的终止字符,例如'\n'(换行符)或者特定的字符,如'#'。
cchar ch;
printf("Enter characters (# to stop): ");
while ((ch = getchar()) != '#' && ch != EOF) {
printf("You entered: %c\n", ch);
}
if (ch == EOF) {
printf("End of input due to EOF\n");
} else {
printf("End of input due to '#'\n");
}
以上都是在满足特定条件时停止输入的方法,你可以根据实际需求选择合适的方式。