java一百题 5~8
【程序5】
题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。
思路:由于比较简单就不写思路啦,使用三目运算或if函数就好啦~~
完整代码

【程序6】
题目:输入两个正整数m和n,求其最大公约数和最小公倍数。
思路:用到辗转相除法,不过这里改变了点思路,让循环(两个数中的最大值)i条件整除其中一个数,然后让符合条件的i们相乘,再与两数相除得出商,用商继续之前的循环,直到循环结束,结果i就是两者的最大公约数。

完整代码

【程序7】
题目:输入一行字符,分别统计出其英文字母、空格、数字和其它字符的个数。
思路1:使用charAt()函数来写

思路2:使用字符数组来写

完整代码(由于写得太长,这里就发main部分的结合上边看就好~~)

【程序8】
题目:求s=a+aa+aaa+aaaa+aa…a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制。输出结果的形式如:2+22+222=246
思路1:多位数值计算可以使用BigDcimal来使用,和Scanner一样需要调用后使用:java.math.BigDcimal
思路2:用两个数分别控制相加值与次数,这里输出要用字符型string,计算部分就是“bigdcimal=bigdcimal.add(new BigDecimal(numstr))”,.add就是与一个新numstr相加(就是4,44,444,4444),bigdcimal则存储着和;
.toString=将函数的值用字符型返回出来。numstr表示式子中的每个元素,result表示式子与结果。

完整代码


浙公网安备 33010602011771号