欢迎您访问52IJ教育培训网,今天小编为你分享的52ij作业方面的学习知识是通过网络精心收集整理的:“getchar和scanf_...getchar!='n')printf("input a,b:");ret=scanf("...”,注意:所整理内容不代表本站观点,如你有补充或疑问请在正文下方的评论处发表。下面是详细内容。
本文发布时间:2016-05-08 23:52 编辑:勤奋者
精选知识
这里你的问题是这样的,scanf返回成功接收到的变量值的个数.这里如果输入是a 1,那么一个都没有读入ret的值就是0,如果输入1 a,那么a=1读入了,但是b=a错误,因此返回值是1,仅当a和b都有正确输入的时候ret的值才会是2,说明输入是正确的了.那么这里就跳到max=a>b?a:b;这里.那么当输入错误的时候ret的值不是2(是0或1),那么就进入到循环体里面,循环里面第一个while:while(getchar!='\n')就是为了把用户多打出来的回车"吃掉",然后再次接受用户的输入,直到2个输入都合法为止.
如果觉得我的回答能对你有所帮助,就请采纳我一下吧~^-^
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
