编写函数,计算一个整数各位数字之和

例如1234的各位数为1+2+3+4

语言编程如下:

#include <iostream>

using namespace std;

void sum(int n){

int m;//暂存各位数

int res=0;//结果

cout<<"res=";

while(n){

m=n%10;//当前个位数

n=n/10;//除个数位之外的数

//输出样式

if(n==0)

cout<<m;

else

cout<<m<<"+";

res+=m;//求和

}

cout<<"="<<res<<endl;

}

int main() {

int n;

cout<<"n:";

cin>>n;

cout<<"n的各位数之和";

sum(n);

return 0;

}

扩展资料:

整数各位数字之和函数编程思路

给定一个正整数,求它的各位数字之和。

例如,给出整数1236,那么计算

1+2+3+6=12

得到结果为:12。

1、求和函数sum

编写一个函数完成求和的功能:

原型:int sum();

功能:返回整数num的各个位数字之和。

2、Input

一个int类型的整数N。

3、Output

输出N的各位数字之和。

Sample Input

1236

Sample Output

12

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-26
这个关键是怎么得到每位数,
#include<stdio.h>

int sum_num(int num)//得到每位数的函数
{
int sum=0;
while(num>10) //计算每位数的循环,先得到的是各位然后依次类推
{
sum+=num%10;
num/=10; //为下一步计算准备
}
return sum;
}

void main(){
int sum=0,num;
printf("请输入你的数:");
scanf("%d",&num); //接收输入数
sum=sum_num(num); //函数调用
printf("%d\n",sum);//打印计算结果本回答被提问者采纳
第2个回答  2008-11-15
#include<stdio.h>

int sum_num(int num)//你要的函数
{
int sum=0;
while(num!=0)
{
sum+=num%10;
num/=10;
}
return sum;
}

void main(){
int sum=0,num;
printf("请输入你的数:");
scanf("%d",&num);
sum=sum_num(num);
printf("%d\n",sum);
}
第3个回答  2008-11-15
int i,sum=0,t;
cin>>i;
while((i/10)>=10){
sum=sum+i%10;
i=i/10;
}
sum=sum+i;
cout<<sum;
第4个回答  2008-11-15
i=val(text1)
a=i mod 10
b=i\10 mod 10
c=i\100 mod 10
d=i\1000
e=a+b+c+d
相似回答