昨天一直在练习一些经典的题目,没有时间呀。突然发现时间好宝贵,时间都不够用。
以下练习题的解法纯属个人见解。如有问题,还请指出!
/*1、循环录入学生的成绩,计算平均分,学生的个数不定,当输入的分数小于0 的时候,结束录入并计算平均分 */ import java.util.Scanner; public class bcTest01 { public static void main(String[] args) { Scanner s = new Scanner(System.in); int sum = 0; int count = 0; for(;;) { System.out.print("请输入第" + (count + 1) +"学生成绩:"); int score = s.nextInt(); if (score <0){ break; } sum += score; count++; } System.out.println("共录入" + count + "个成绩,平局分为:" + (1.0*sum/count)); } } /* 打印菱形 * *** ***** ******* ********* *********** ************* *************** ************* *********** ********* ******* ***** *** * */ public class inserLooper03 { public static void main(String[] args) { int lineNum = 8; for (int i = 1; i <= lineNum; i++) { for (int j = 0; j < (lineNum-i); j++) { System.out.print(" "); } for (int j = 0; j < (2*i-1); j++) { System.out.print("*"); } System.out.println(); } for (int i = lineNum -1; i > 0; i--) { for (int j = 0; j < (lineNum-i); j++) { System.out.print(" "); } for (int j = 0; j < (2*i-1); j++) { System.out.print("*"); } System.out.println(); } } } /* * *** * * * * * * * * * * * * * * * * * * */ public class insertLooper07 { public static void main(String[] args) { int lineNum = 8; for (int i = 1; i <= lineNum; i++) { for (int j = 0; j < (lineNum-i); j++) { System.out.print(" "); } for (int j = 0; j < (2*i-1); j++) { if (j ==0){ System.out.print("*"); }else{ if(j==0 || j==2*(i -1) || j==i-1){ System.out.print("*"); }else { System.out.print(" "); } } } System.out.println(); } } } /*有1、2、3、4,四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?*/ public class Homework01 { public static void main(String[] args) { int count = 0; for (int a = 1; a <= 4; a++) { for (int b = 1; b <=4; b++) { for ( int c = 1; c <=4; c ++){ if (a != b && a != c && b !=c ){ int sum= a*100 + b*10 + c; count++; System.out.println(sum); } } } } System.out.println("共" + count + "个"); } } //输出9*9口诀 public class Homework03 { public static void main(String[] args) { for (int i = 1; i <= 9; i++) { for (int j = 1; j <= i; j++) { System.out.print(j + "*" + i + "=" + (j * i) + "\t"); } System.out.println(); } } } /*一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。 */ import java.util.Scanner; public class Homework06 { public static void main(String[] args) { // TODO Auto-generated method stub Scanner s = new Scanner(System.in); System.out.print("请输入一个五位数:"); int i = s.nextInt(); int a,b,c,d; if (i >= 10000 && i <= 99999 ){ //个位 a = i; //十位 b = (i/10); //千位 c = (i/1000); //万位 d = i/10000; if (a == d && b == c){ System.out.println(i + " 是 回文数!"); }else{ System.out.print(i + " 不 是回文数!"); } }else{ System.out.println("输入数字不是五位数"); } } } /*100匹马驮着100担货物,大马一匹驮3担,中马2担,小马两匹驮1担。请输出所有可以满足题目要求的马匹的组合。*/ public class Homework10 { public static void main(String[] args){ for (int b = 0;b <=33; b++ ){ for (int m = 0; m <= 50; m++){ for (int s = 0;s <= 100; s++){ if (((b+m+s) == 100) && ((3*b+2*m +0.5*s) == 100)){ System.out.println("大马:" + b + ",中马:" + m + ",小马:" + s); } } } } } } /*用循环的思路求出2345678倒序后的数字,输出该数字(动态输入一个数字也行)*/ import java.util.Scanner; public class Test3 { public static void main(String[] args) { // TODO Auto-generated method stub Scanner s = new Scanner(System.in); System.out.print("请输入一个整数:"); int num = s.nextInt(); System.out.print("该数字倒序为:"); for (;num != 0; ) { System.out.print(num); num = num/10; } } } /*动态输入一个数字后,判断该数字是不是素数 (素数就是除了1和本身不可以被其他数字整除: 例如1,2,3,5,7,11,13,17, 判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数*/ import java.util.Scanner; public class Test4 { public static void main(String[] args) { Scanner s = new Scanner(System.in); System.out.print("请输入一个整数:"); int num = s.nextInt(); if (num == 1 || num ==2 ){ System.out.println("该数字是 素数"); } else { int i = 2; // 可用 i< Math.sqrt(num),也可以 i < num for (; i < num; i++) { if (num%i == 0){ System.out.println("该数不是 素数"); break; } } if (i == num){ System.out.println("该数字 是素数"); } } } }
