第六章第二题(求一个整数各位数字之和)(Sum the digits in an integer)
*6.2(求一个整数各位数字之和)编写一个方法,计算一个整数各位数字之和。使用下面的方法头:
public static int sumDigits(long n)
例如:sumDigits(234)返回9(2+3+4)。 提示:使用求余操作符%提取数字,用除号/去掉提取出来的数字。例如:使用234%10(=4)提取4。然后使用234/10(=23)从234中去掉4。使用一个循环来反复提取和去掉每位数字,直到所有的位数都提取完为止。 编写程序提示用户输入一个整数,然后显示这个整数所有数字的和。
*6.2(Sum the digits in an integer) Write a method that computes the sum of the digits in an integer. Use the following method header:
public static int sumDigits(long n)
For example, sumDigits(234) returns 9 (= 2 + 3 + 4). (Hint: Use the % operator to extract digits and the / operator to remove the extracted digit. For instance, to extract 4 from 234, use 234 % 10 (= 4 ). To remove 4 from 234, use 234 / 10(= 2 3 ). Use a loop to repeatedly extract and remove the digit until all the digits are extracted. Write a test program that prompts the user to enter an integer then displays the sum of all its digits.
下面是参考答案代码:
import java.util.*;
public class SumTheDigitsInAnIntegerQuestion2 {
public static void main(String[] args) {
long number;
Scanner inputScanner = new Scanner(System.in);
System.out.print("Enter an integer:");
number = inputScanner.nextLong();
System.out.printf("The sum of the digits in %d is %d", number,sumDigits(number));
inputScanner.close();
}
public static int sumDigits(long n) {
int sum = 0;
do {
sum += n % 10;
n /= 10;
}while(n > 0);
return sum;
}
}
运行效果:

注:编写程序要养成良好习惯
1.文件名要用英文,具体一点
2.注释要英文
3.变量命名要具体,不要抽象(如:a,b,c等等),形式要驼峰化
4.整体书写风格要统一(不要这里是驼峰,那里是下划线,这里的逻辑段落空三行,那里相同的逻辑段落空5行等等)
5.普通变量,方法名要小驼峰,类名要大驼峰,常量要使用全部大写加上下划线命名法
6.要学习相应的代码编辑器的一些常用快捷键,如:快速对齐等等