需求:计算输入的任意一个正整数的各位数字之和。
代码:
#include<stdio.h>
int sumOfNumber(int num) //分解各位数字,返回其和
{
int s=0;
do
{
s += num%10; //累计各位数字之和
num /= 10; //求下一位数值
}while(num);
return(s);
}
void main()
{
int n;
printf("\n");
printf("输入一个整数:");
scanf("%d",&n);
printf("各位数字之和:%d\n",sumOfNumber(n));
printf("\n");
}
整个程序不难,但是我觉得:s += num%10; //累计各位数字之和 num /= 10; //求下一位数值 ,这两个语句还是挺巧妙的,因为用取余,求模的方式,累加了各位数字,拿到了数字的下一位。