输入一个4位数的整数,求其各数位上的数字之和。
输入格式:
输入在一行中给出1个4位的正整数n。
输出格式:
在一行中输出n的各数位上的数字之和。
输入样例:
1234
输出样例:
10
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
思路:
思路一:
将千百十个每一位分别求出来,然后相加
#include<stdio.h>
int main( )
{
int n,s=0,a,b,c,d;
scanf("%d",&n);
a=n/1000;
b=n%1000/100;
c=n%1000%100/10;
d=n%1000%100%10;
s=a+b+c+d;
printf("%d",s);
}
思路二:
通过循环,求数n/10的余数,这里求个位的数,然后余数赋值给s,n/10重新赋值给n,这里将n的个位数去掉,这样可以一次求出十位,百位,千位。
#include<stdio.h>
int main( )
{
int n,s=0;
scanf("%d",&n);
while(n>0)
{
s+=n%10;
n=n/10;
}
printf("%d",s);
}