你好能帮我解释下么do result += n % 10 ; while( n /= 10 );

这段是什么意思啊 为什么要除10啊

这个肯定是C语言的题目,C语言有个特点,BOOLEAN,条件可以用INT来表达,0为假,而一切非0的数为真
这个是一个DO...WHILE循环,其实现的是给RESUTL循环的添加n除以10的余数,那么,我们比如说RESULT初始化为0,n初始化为11
这样循环的结果为,先不管条件成不成立,执行result += n % 10 ; 然后result结果为1,这时执行条件语句,这里的条件语句不但是判断,而且是在改变N的值,n/=10,那么,它判断的是n在除以10后的结果是否为0,如果为0,则退出循环,那么,n/10的结果为1,这时进行第二次循环,result += n % 10 ; 结果为2,这时又进入条件判断,先执行n/10结果为0,则退出循环程序结束
这个一般是选择题,或者是填空题比较爱出的题目,为的就是迷惑人,一般写程序没有这样写的。而JAVA,C#等等语言,条件部分是绝对不是数字,只能是BOOLEAN的TRUE或FALSE。也就出不了这种问题了,呵呵
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-05-18
因为N不等于10
第2个回答  2014-05-18
要余数吧
相似回答