第1个回答 2010-06-13
我这个方法也很好,是先变成字符串,然后累加!
#include <stdio.h>
int sum(int x)
{
char s[32] =""; char * y = s; int total = 0;
sprintf(s, "%d", x);
while(!*y) {
total += *y - '0';
y++;
}
return total;
}
int main(void)
{
int x = 0;
printf("请输入一个整数:");
scanf("%d", &x);
printf("这个整数各个位数上数字之和=%d", sum(x));
return 0;
}本回答被网友采纳