用C语言编程求一个整数各个数的和的问题main(){ int n,sum=0; printf("请输入任意一个整数:"); scanf("%d",&n); while(n!=0) { sum+=n%10; n=n/10; } printf("其各个位数之和为%d\n",sum);关键的地方不是很明白,就是

来源:学生作业帮助网 编辑:作业帮 时间:2024/12/02 03:53:34
用C语言编程求一个整数各个数的和的问题main(){ int n,sum=0; printf(
xS[oA++ M^F;!Ei"6r)VBKD-ffvx/xfT!s8C(gWz3if tS O:9Inț"|WE E.wB R/ޠ;e4iĻp2C ~4 {JBQm'>@TPyIQ O$eUpT!znX*!=n@S$݁`Qɼ†](v> BKeʥݢŬ Q!Ol/_ b5)jYCXG[X*&@lv}^HbU<;hR]gҒ [Q+#⊖}-@d 9r6sY\gTle8R-x( *kcAU'ĺPYgmhl{lbl`'_UFr:Y&#Sr%0"?) L>E̟`

用C语言编程求一个整数各个数的和的问题main(){ int n,sum=0; printf("请输入任意一个整数:"); scanf("%d",&n); while(n!=0) { sum+=n%10; n=n/10; } printf("其各个位数之和为%d\n",sum);关键的地方不是很明白,就是
用C语言编程求一个整数各个数的和的问题
main()
{
int n,sum=0;
printf("请输入任意一个整数:");
scanf("%d",&n);
while(n!=0)
{
sum+=n%10;
n=n/10;
}
printf("其各个位数之和为%d\n",sum);
关键的地方不是很明白,就是这个:
sum+=n%10;
n=n/10;
假如说输入的数是145, 那么经过n=n/10之后就是14.5,然后sum=0+145%10,应该是45.不明白是怎么把各个数求和的,望指点

用C语言编程求一个整数各个数的和的问题main(){ int n,sum=0; printf("请输入任意一个整数:"); scanf("%d",&n); while(n!=0) { sum+=n%10; n=n/10; } printf("其各个位数之和为%d\n",sum);关键的地方不是很明白,就是
sum+=n%10;这句的意思就是取当前n的最后一位,这句语句的意思是n除以10的余数,也就是个位
n=n/10;这句的意思就是去除最后一位,这句语句的意思是将n的值除以10赋值给n,原来的话应该n的值就是14.5了,但是因为n的变量类型是整形,所以结果会自动进行数据类型转换,所以n的值就是14.5舍弃小数点以后的那个14