首页 > 解决方案 > C程序返回一个整数的位数之和

问题描述

#include <stdio.h>
int main()
{

int sum=0, prod=1, a, b;

printf("Enter a number: \n");

scanf("%d",&a);

while (a!=0)

sum = sum + a%10;
    a = a/10;

while (b!=0)

prod = prod + b%10;
    b = b/10;


printf("Sum=%d\nProd=%d\n", sum, prod);


return 0;
}

这个 C 程序返回给定整数的数字的总和和乘积,但我希望有人为我分解它,而且当我运行它时,它不起作用,所以请有人纠正我。

标签: c

解决方案


%是模运算,即它给你除数除法的提醒。在您的情况下,该操作% 10有效地返回数字的最后一位。您将此数字与prod表示数字总和的变量相加。对当前数字求和后,您将执行下一个主要操作/ 10,即整数除法,并且只删除该数字的最后一位。


推荐阅读