问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

int main() { int c; while((c=getchar())!=EOF) putchar(c); } 为什...

发布网友 发布时间:2024-07-16 02:08

我来回答

4个回答

热心网友 时间:2024-08-05 06:37

int 为整数型,char是字符型,前面的开始的类型决定了你后面C语言编写的范围,如我要求一个简单的 + - * /一般数字较多,我可以选择整数型,但是如果编写一句话,前面当然用字符型最好,这也是C语言区分开始是它要做什么的前提。

关于EOF:在计算机术语缩写通常为 EOF(End Of File),在操作系统决定资料源无更多的资料可读取。资料源通常称为档案或串流。   在 C语言,或更精确地说成 C标准函式库中表示:文件结束符(end of file)。在while循环中以EOF作为文件结束标志,这种以EOF作为文件结束标志的文件,必须是文本文件。在文本文件中,数据都是以字符的ASCII代码值的形式存放。我们知道,ASCII代码值的范围是0~255,不可能出现-1,因此可以用EOF作为文件结束标志。

档案存取或其它 I/O 功能可能传回等于象征符号值 (巨集) EOF 指示档案结束的情形发生。实际上 EOF 的值通常为 -1,但它依系统有所不同。巨集 EOF 会在编译原始码前展开实际值给预处理器。   
C语言中,EOF常被作为文件结束的标志。还有很多文件处理函数处错误后的返回值也是EOF,因此常被用来判断调用一个函数是否成功。   
例如:   
#include <stdio.h>   
int main()   
{   
int n;   
int array[25];   
while (scanf("%d",&n),n!=EOF)   
{   
for (int i=0; i<n; i++)   scanf("%d",array+i);   
for (i=0; i<n; i++)   printf ("%d ",array[i]);  
 }  
 return 0;   }

热心网友 时间:2024-08-05 06:38

eof通常是作为一个文件结束标示,也可作为一个标准输入的结尾,同时也能作为一种错误返回值,当然用任何常规字符做eof的替换值,都是不合理的,eof其实根本不是一个字符,而通常只作为一个返回信号值,其实是一个整形数据类型的值,当然二进制位数就会比char要多。那么这里不能申明为char,一方面是为了防止标准字符会被意外的解释成eof(隐式类型转换),另一方面是要让接受字符的变量c能够容纳eof这个特殊的字符,通常惯例都是将这个接受char的变量(就是例子中的c)申明为int类型。这应该就是你想要的答案了吧!呵呵

热心网友 时间:2024-08-05 06:37

2楼解释的不错

热心网友 时间:2024-08-05 06:37

1.c语言中,char类型和int型可以互相调用,因为他们的ascII码是对应的,所以,本题中,你将int改成char,运行也是一样的,不影响的。
2.eof是结束符,代表你全部输入结束后才输出相应字符,换成while((c=getchar())!='\0')也是一样的
3.你老师说的keyboard是指键盘输入,buffer是缓冲区,而program指你的程序代码,估计在本题中,老师想解释的逻辑关系是:程序运行过程中,键盘输入的量暂时存入缓冲区,遇到结束符后,再从缓冲区中将数据读出,输出到显示器。比如你输入abc,全部输入完成回车后,才输出abc,而不是输入a就输出a,输入b再输出b。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
小米摄像头离线人在外地怎么办 win11如何固定电脑桌面图标 QQ三国的当代杰出少年是怎么得的? 三国人物风云榜的作者简介 三国人物风云榜作者简介 三国人物风云榜目录 三国人物风云榜内容提要 w10电脑不动黑屏w10系统开机黑屏只有鼠标箭头怎么回事 ...FRAMEWORK中的Action, Control, Resource, Model到底是什么关系... windframework特点 在VB中 清除用Print方法显示的文本或图形可用s什么方法? 以撒的结合gulp药丸解锁:全面攻略 ...因为对别人都会什么什么指使.这是哪个成语? 联想官网买电脑可靠吗 双手拿筷子是什么意思? 危重症临床基本监测与处置内容简介 C语言中scanf处理输入数据时,遇到什么情况时该数据认为结束_百度... 《战地》新作2025年回归3A质量,能否重振系列辉煌? 为什么苹果微信总收不到消息提醒? 出血热肾病综合征疾病概述 听说水晶可以防辐射,水晶项链可以吗? 苹果微信来消息不提醒,什么原因? 出血热有哪些类型的分类? gta4最后一个任务过不去,就是去杀jimmy为kate报仇那一个。 办理无犯罪证明公证需多长时间 订做衣柜要注意什么定制衣柜和成品衣柜的区别 日本山东哪个大 百度云超级会员多少钱??? 大拇指指甲变空了,白指甲像里面蔓延,这是咋回事,别的手指都没事!_百度... 我这是灰指甲吗? 之前剪了指甲, 大拇指旁边的指甲指甲越来越空 小拇... 龛怎么读音是什么意思龛怎么读 我奶奶84了前天晚上吃完饭突然呕吐左半身麻木无知觉手指常成鸡爪状现... 华为nova7se的指纹识别模块位置在哪一侧? π石项链有辐射吗 淘宝上卖的"天然石"有没有可能有放射性 以撒的结合各种药丸:游戏中各类药丸效果详解 花呗额度上限怎么提升 ...36岁了,有车,有房,靠自己努力挣的钱在有多少存款 定制衣柜安装需要注意什么 高光粉适合油性皮肤,高光液适合干性皮肤,是这样吗? 干柴烈火的近义词和反义词是什么_干柴烈火是什么意思? 牛奶红枣糕怎么做好吃 红豆薏米粉,固元膏粉,黄豆粉,山药粉可以一起喝么 北京黎明医院自体细胞黄金组合疗法治疗中心自体细胞黄金组合疗法治疗机 ... 女装市场的容量与趋势 ...工伤休息时间怎么计算,是拆完钢板工伤休息时间就结束了吗 心功能不全怎么治疗 不挖鱼塘也能养鱼,农村大爷利用农田直接养殖活水鱼 缓刑期间又犯罪可以判管制吗? 离婚男方婚前的债务需要我偿还吗?离婚债务如何分割?