最近表妹刚学Java,布置的课后作业,帮她小做了下,希望对新学Java的人有所帮助也。。。
题目:要求长整形数个位数相加得到结果!
下面是第一种方法:
public static void main(String[] args) {//这道题无非考你如何使用求余、求模。求余、求模有何区别
long aa=99909; //此处为你要求和的长整型,你可以随意改变数值!
System.out.println("原数据为:"+aa);
int cc=0; int bb=0; int i=1; //i只是用来记录被加到了第几位了! for(bb=(int)(aa%10);aa>0;aa=aa/10){ //其中aa是的到求模后的结果 System.out.println("第"+i+"位被加上");//是从个位开始向上加的 cc+=aa%10; //此处为求余 i++; } System.out.println("相加后得:"+cc);
}
接下来是第二种方法:
public static void main(String[] args) {
long aa=99909; //这道题无非考你如何使用求余、求模。求余、求模有何区别 System.out.println("原数据为:"+aa); int cc=0; int bb=0; int i=1;
while(aa>0){ //这是使用while语句,写两种是让你看下这里面的区别与共同
//其实while与for实现的功能是一样的
//就是看你个人喜欢,有时使用while语句非常方便,有时使用for语句非常方便,这要看具体情况而定
//但二者功能是基本一样的
System.out.println("第"+i+"位被加上"); bb=(int)(aa%10); cc+=aa%10; aa=aa/10; i++; } System.out.println("相加后得:"+cc);
}
|
其实两种方法没什么区别,就是让新手有个对比!学习Java,写程序是要在电脑上跑的,不是看书就有用的,望新学者不要怕在电脑上动手写。。。