【发布时间】:2018-04-18 09:56:17
【问题描述】:
用户可以输入各种不同数量的数字(只要他们输入的数字不超过 5000 个)。但是,当用户按下 CTRL+D 时,程序应该停止请求用户输入。到目前为止我已经做到了。但是,我必须按两次 CTRL+D 才能停止。有人可以帮我解决它吗?
int input_array[MAX_NUMBERS] = {0};
scanf("%d", &input_array[0]);
int eof_detector = getchar();
int i = 0;
while ((i < 5000) && (eof_detector != EOF)) {
i++;
scanf("%d", &input_array[i]);
eof_detector = getchar();
}
【问题讨论】:
-
@user3121023 我收到编译器错误。也许我理解错了?你能完整地告诉我你的意思吗?
标签: c while-loop scanf eof