Java 学习笔记 Day005 (补day5 的练习题)

昨天一直在练习一些经典的题目,没有时间呀。突然发现时间好宝贵,时间都不够用。

以下练习题的解法纯属个人见解。如有问题,还请指出!

/*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%10;
			//十位
			b = (i/10)%10;
			//千位
			c = (i/1000)%10;
			//万位
			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%10);
			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("该数字 是素数");
			}
		}
	}
}
































































  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值