3895 - 5.2 求一个整数各位数字之和

通过次数

0

提交次数

0

时间限制 : 1 秒 内存限制 : 128 MB

编写一个方法,计算一个整数各位数字之和:

public static int sumDigits(long n)

例如:sumDigits(long n) 返回92+3+4)。

题目输入

输入一个整数n

题目输出

输出一行

The sum of digits for n is 整数n各位数字之和

输入/输出样例

输入格式

234

输出格式

The sum of digits for 234 is 9

C++解答

#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
	int n,sum=0;
	cin>>n;
	cout<<"The sum of digits for "<<n<<" is ";
	while(n>9)
	{
		// cout<<n%10<<" ";
		sum=sum+n%10;
		n=n/10;
	}
	// cout<<n<<endl;
	sum=sum+n;
	cout<<sum<<endl;
	return 0;
}

Java解答

import java.util.Scanner;
public class Main {
	public static void main(String[] args) {
		Scanner n = new Scanner(System.in);
		int a = n.nextInt();
		System.out.print("The sum of digits for " + a + " is " + sumDigits(a));
	}
	public static int sumDigits(long n) {
		int i = (int) Math.abs(n);
		int sum = 0;
		while (i != 0) {
			int z = i % 10;
			sum += z;
			i = i / 10;
		}
		return sum;
	}
}