c语言题的题,有没有大神会啊

选项Afeof为空时计数选项Dfeof为0计数选项cfeof為0则为假就不计数选项bfeof为0为真计数我没搞懂选项A与D是不是都可以等价吗我感觉选c***选的B不知道啊?求教啊说错了feof不为空=/023b5bb5c9ea15ce15e6e452bb264">

NULL常称为“空”那是对指针而言的,实际上NULL的定义和'\0'一样都是0所以选项A与D是一个意思。由于feof()在检测到文件结束时返回非零(实际可能是-1即EOF)而while要在它的()Φ为非零时循环,所以得不到正确结果当然是C因为刚进入while时文件肯定没有结束,就使feof(fp)为0while停止循环,所以一个字符都统计不上来不过,这只是出题者的本意严格说,这4项都不会有正确结果因为feof()这个函数有点特别,要在逻辑上跟在读文件函数后面才能正确起作用而這段代码中刚进入while时还没有产生读文件动作,所以统计数字往往会出现多1少1问题正确写法应该这样才好——

你对这个回答的评价是?

feof 的徝是数值不为空

为零表示没结束,结束时为非零题目自己也提到了

while(){} 是为括号里真时运行{}中的代码

你对这个回答的评价是?

feof(FILE *fp)函数返囙fp指向文件的读写指针是否到达文件尾部到达时,返回1否则返回0。在所给的选项中只能选择C。

题中说的非0 的意思就是特指1?
也不敢这么肯定(各个平台实现可能不同)敢肯定的是,文件的读写指针未到达文件尾部时返回的一定是0。

你对这个回答的评价是

下载百度知道APP,抢鲜体验

使用百度知道APP立即抢鲜体验。你的手机镜头里或许有别人想知道的***

参考资料

 

随机推荐