今天做了两个练习题目:1、根据学生所得分数来给出学生分数等级;2、求取最大公约数和最小公倍数
1 import java.util.Scanner; 2 3 public class Lianxi03 { 4 public static void main(String[] args) { 5 Scanner sc=new Scanner(System.in); 6 System.out.print("请输入学生分数:"); 7 int number=sc.nextInt(); 8 if(number>=90) { 9 System.out.println("学生分数为A"); 10 }else if(number>=60&&number<=89) { 11 System.out.println("学生分数为B"); 12 }else if(number<60) { 13 System.out.println("学生分数为C"); 14 } 15 } 16 }
这个程序我使用的是if语句来区别等级,当然也可以使用多元运算符(char grade=num>=90?'A':num>=60?'B':'C')。
1 import java.util.Scanner; 2 3 public class Lianxi04 { 4 public static void main(String[] args) { 5 Scanner sc=new Scanner(System.in); 6 System.out.print("请输入第一个数:"); 7 int num1=sc.nextInt(); 8 System.out.print("请输入第二个数:"); 9 int num2=sc.nextInt(); 10 int m=deff(num1,num2); 11 int n=num1*num2/m;//最小公倍数 12 System.out.println("最大公约数:"+m); 13 System.out.println("最小公倍数:"+n); 14 } 15 16 //求公约数 17 public static int deff(int x,int y) { 18 int temp; 19 if(x<y) { 20 temp=x; 21 x=y; 22 y=temp; 23 } 24 while(y!=0) { 25 if(x==y) return x; 26 else { 27 int k=x%y; 28 x=y; 29 y=k; 30 } 31 } 32 return x; 33 } 34 }
这个程序稍微复杂一些,他需要使用一个方法来求取两个数的最大公约数,最小公倍数是两数之积除最大公约数。
如果有写的不好的地方,多谢各位大佬指点。