带你了解EOF!!!

什么是EOF?

EOF全称end of file,它是文件结束标志,EOF的本质是-1。

按我的了解来看,它一般与scan连用。下面已例题的形式来给大家解释一下。

EOF的应用

例题:多组输入,一个人的智商(IQ)大于140,则输出Genious;否则,什么也不输出。

#define _CRT_SECURE_NO_WARNINGS 1
#include
int main()
{
	int iq = 0;
	while (scanf("%d", &iq) != EOF)
	{
		if (iq >= 140)
			printf("Genious\n");
	}
	return 0;
}

上面我们说了EOF的本质是-1,这里又有小伙伴迷惑了,那scanf怎么能和-1相比较呢?

其实scanf函数返回值是实际读到数据的个数。例如我们输入141,那我们的scanf函数读到的数据个数就是1,1不等于-1,进入while循环,最后输出Genious。

我们不论在scanf函数中输入什么,它读到数据的个数永远都不可能等于-1,这样循环就不停止,就可以多组输入,那么怎么结束循环呢?

结束EOF

结束EOFF其实很简单,只要按住我们键盘的Ctrl+Z键我们就能退出循环,因为我用的是VS2022编译器,在这个编译器里面需要按三次,下面给大家演示一下:

 ​​​​​​​带你了解EOF!!!_第1张图片    带你了解EOF!!!_第2张图片

这样我们就退出了循环。

其实当我们在遇到要求我们多组输入的题目时,一般的解决途径都是使用EOF,希望大家可以记住EOF,合理使用它。


 今天的分享就到这里啦!希望对大家有所帮助,有什么问题不懂,大家可以给我留言,我会为大家解答的,谢谢观看呐。

                    带你了解EOF!!!_第3张图片

 ​​​​​​​

 

你可能感兴趣的:(c语言,c++,算法)