C++中有一段程序时这样的。 int a; while(cin >> a) cout << (char)a;

为什么当输入为72101108108111时显示结果为Hello。我觉得每当输入一个整型时放入a中,开始执行while的循环体就要输出相应的字符呀。为什么可以连着输那么多... 为什么当输入为72 101 108 108 111 时显示结果为Hello。我觉得每当输入一个整型时放入a中,开始执行while的循环体就要输出相应的字符呀。为什么可以连着输那么多整型,然后一起显示? 财富值不多,,求助啊大家。。 展开
 我来答
小白范
2014-02-25 · TA获得超过357个赞
知道小有建树答主
回答量:309
采纳率:50%
帮助的人:283万
展开全部
你在键盘上输入的时候,操作系统并没有立即把输入的内容传给你的程序,而是放在缓冲区里,直到用户在键盘上敲了回车键,你的程序才收到所输入的内容。
所以,连续输入72 101 108 108 111 和分开输入的效果是一样的。
追问
那意思是说 这几个数字全部保存在整型a里,等按回车程序收到输入内容之后,执行循环体,输出a里面存放的多个字符吗   如果不这么理解,那么又怎么会连续输出。。
追答
所有输入的内容在回车之后才送到你的程序,
你的程序第一次while循环时,从中取出72,存到a里,然后输出。
第二次循环时,取到的是101,第三次是108.。。。。。
秋月不分明6818
2014-02-25 · TA获得超过731个赞
知道小有建树答主
回答量:1608
采纳率:0%
帮助的人:632万
展开全部
在这里的while(1)的作用是使这个程序运行永不关闭后点这里了解一段时间(1);是一个永恒的循环执行了while语句,你应该知道,虽然(谓语){...};后面的循环体是在内容的自由裁量权执行满足它的条件,说有一个节目
INT I = 1;

同时(I <= 10)

{ i + +;

}

这个周期是决定我执行,而I <这个表达式= 10值仅为0或1,法官是一个满足的情况下,判断是不满意为0,而你在这里,(1)相当于法官的表情永不满足流通,相当于在(1 == 1);至于同时

(1)使用,一般不能就像您使用该程序这里面,但对于发射,当你不知道什么时候使用,而(1)循环,当有在循环

break语句的对应端必须使用的设计环说,你有一个菜单程序,选择1-5这五个菜单项,当你选择退出程序,它是5,那么你就可以使用这种形式

字符CH;

而( 1) {

printf(“请1.xxxxxx \ N”);

printf(“请2.xxxxxx \ N”);

printf(“请3.xxxxxx \ N” );

printf(“请4.xxxxxx \ N”);

printf()的“5退出\ n”;

CH =的getch();

如果(CH = = '6')

突破;

}

这是一段时间(1)

最常用的方法,例如,只要在使用过程中的程序

INT I前= 1;

同时(I <= 10)

{

i + +;

}

您也可以更改

INT I = 1; BR />而(1)

{

i + +;

倘(i> 10)

突破;

}
效果是一样的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-02-26
展开全部
输入终止条件的判断
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式