Java2021最全的基础习题(持续更新中)

//已知90分以上为优秀,80以上良好,60以上及格,其他不及格;
public class Score_cyq{
	public static void main(String args[]){
		int score_cyq = 80;
		if(score_cyq>=90){
			System.out.println("优秀");
		}else if(score_cyq>=80){
			System.out.println("良好");
		}else if(score_cyq>=60){
			System.out.println("及格");
		}else{
			System.out.println("不及格");
		}
	}
}
//已知90分以上为优秀,80以上良好,60以上及格,其他不及格;
public class Score_cyq{
	public static void main(String args[]){
		int score_cyq = 80;
		if(score_cyq>=90){
			System.out.println("优秀");
		}else if(score_cyq>=80){
			System.out.println("良好");
		}else if(score_cyq>=60){
			System.out.println("及格");
		}else{
			System.out.println("不及格");
		}
	}
}
//有一只青蛙,白天爬5米晚上下降3米,
//现有一口井高9米,青蛙白天开始向上爬,请问几天可以爬出
public class Frog_cyq{
	public static void main(String args[]){
		int init_cyq = 5;
		int day_cyq = 0;
		while(init_cyq<9){
			init_cyq+=5;
			init_cyq-=3;
			day_cyq++;
		}
		System.out.println("青蛙用了"+day_cyq+"天爬出");
	}
}
//计算1+2+...100之和
public class Sum100_cyq{
	public static void main(String args[]){
		int sum_cyq = 0;
		int i = 1;
		while(i<=100){
			sum_cyq+=i;
			i++;
		}
		System.out.println("1~100之和为"+sum_cyq);
	}
}
//写一程序,判断某年是否为闰年
public class YearJudge_cyq{
	public static void main(String args[]){
		int year_cyq = 1974;
		if(year_cyq%4==0){
			System.out.println("年份为闰年");
		}else{
			System.out.println("年份不是闰年");
		}
	}
}


//输入等级,输出考试成绩,A等是85分以上,
//B等是70—84,C等是60—69,D等是60分以下(Switch)
public class Grade_cyq{
	public static void main(String args[]){
		char gradeIn_cyq = 'A';
		switch(gradeIn_cyq){
			case 'A': System.out.println("85分以上");break;
			case 'B': System.out.println("70-84");break;
			case 'C': System.out.println("60-90");break;
			case 'D': System.out.println("60分以下");break;
			default: break;
		}
	}
}
//输出以下4*5的矩阵
public class Array_cyq{
	public static void main(String args[]){
		for(int i=1;i<5;i++){
			int num_cyq = 1;
			for(int j=0;j<5;j++){
				System.out.print(num_cyq*i);
				num_cyq++;
			}
			System.out.println();
		}
	}
}


//打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,
//其各位数字立方和等于该数  本身。例如:153是一个"水仙花数",
//因为153=1的三次方+5的三次方+3的三次方。 
public class Flower_cyq {
	public static void main(String args[]) {
		for(int i = 100;i <= 999;i++){
			int g = i%10;
			int s = i/10%10;
			int b = i/100;
			if(Math.pow(g, 3)+Math.pow(s, 3)+Math.pow(b, 3) == i)
				System.out.println(i);
		}
	}
}


/*
一球从100米高度自由落下,每次落地后反跳回原高度的一半;
再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高? 
*/
public class Boll_cyq {
	public static void main(String args[]) {
		double timeHigh_cyq = 100;
		double distance_cyq = 0;
		int num_cyq = 10;
		while(num_cyq>0){
			distance_cyq+=1.5*timeHigh_cyq;
			timeHigh_cyq*=0.5;
			num_cyq--;
			if(num_cyq==0){
				distance_cyq-=timeHigh_cyq;
			}
		}
		double lastHigh_cyq = 100*Math.pow(0.5,10);
		System.out.println("共经过"+distance_cyq+"米");
		System.out.println("第十次反弹"+timeHigh_cyq+"米");
		System.out.println("最后高度"+lastHigh_cyq+"米");
	}
}
//输出9*9口诀
public class Multi_cyq {
	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+" ");
			}
			System.out.println();
		}
	}
}
//合并两个数组
public class Main {
    public static void main(String[] args) {
       int arr1_cyq[]={1,2,3,4};        //初始化数组
       int arr2_cyq[]={5,6,7,};
       int arrUnion_cyq[]=new int[arr1_cyq.length+arr2_cyq.length];   //开辟新数组空间
        for(int i=0;i<arr1_cyq.length;i++){
            arrUnion_cyq[i]=arr1_cyq[i];
        }
        for(int j=0;j<arr2_cyq.length;j++){
            arrUnion_cyq[arr1_cyq.length+j]=arr2_cyq[j];
        }
        for(int arru:arrUnion_cyq){
            System.out.print(arru+"\t");
        }
    }
}

/*
int oldArr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5};
	要求将以上数组中的0项去掉,将不为0的值存入一个新的数组,
	生成新的数组为:
	int newArr[]={1,3,4,5,6,6,5,4,7,6,7,5};
 */
public class Main {
    public static void main(String[] args) {
        int oldArr_cyq[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5};
        int count_cyq=0;        //记录数组中非0个数
        for(int oldarr:oldArr_cyq){             //计算非0个数
            if(oldarr!=0){
                count_cyq++;
            }
        }
        int newArr_cyq[]=new int[count_cyq];            //开辟新数组空间
        count_cyq=0;                //新数组下标
        for(int i=0;i<oldArr_cyq.length;i++){
            if(oldArr_cyq[i]!=0){
                newArr_cyq[count_cyq]=oldArr_cyq[i];     //新数组赋值
                count_cyq++;
            }
        }
        for(int newarr:newArr_cyq){       //遍历数组
            System.out.print(newarr+"\t");
        }
    }
}
/*
定义一个包含10个元素的数组,对其进行赋值,
使每个元素的值等于其下标,然后输出,
最后将数组倒置后输出
*/
public class Main {
    public static void main(String[] args) {
        int arr_cyq[]={0,1,2,3,4,5,6,7,8,9};        //数组初始化
        for(int ar:arr_cyq){                         //遍历输出
            System.out.print(ar+"\t");
        }
        for(int i=0;i<arr_cyq.length/2;i++){           //元素前后置换
            int temp_cyq=arr_cyq[i];
            arr_cyq[i]=arr_cyq[arr_cyq.length-i-1];
            arr_cyq[arr_cyq.length-i-1]=temp_cyq;
        }
        System.out.println();
        for(int ar:arr_cyq){                         //遍历输出
            System.out.print(ar+"\t");
        }
    }
}
/*
判断一个数组{1,2,3,1,0}中是否存在相同的元素,
如果存在相同的元素则输出“重复”,否则输出“不重复”。
*/
public class Main {
    public static void main(String[] args) {
        int arr_cyq[]={1,2,3,1,0};
        int value_cyq=0;        //需要进行比对的值
        for(int i=0;i<arr_cyq.length;i++) {
            for (int j = i + 1; j < arr_cyq.length; j++) {
                if (arr_cyq[i] == arr_cyq[j]) {
                    System.out.println("重复");
                    return;
                }
            }
        }
    }
}
//输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in=new Scanner(System.in);
        int[] arr_cyq=new int[6];       //开辟数组空间
        System.out.println("请输入数组:");
        for(int i=0;i<arr_cyq.length;i++){
            arr_cyq[i]=in.nextInt();             //键盘键入数组
        }
        int maxArr_cyq=0;         //纪录最大值
        int minArr_cyq=100;           //纪录最小值
        for(int ar:arr_cyq){
            if(ar>maxArr_cyq){           //找出最大值
                maxArr_cyq=ar;
            }
            if(ar<minArr_cyq){           //找出最小值
                minArr_cyq=ar;
            }
        }
        for(int i=0;i<arr_cyq.length;i++){
            if(arr_cyq[i]==maxArr_cyq){             //最大值与第一个互换
                arr_cyq[i]=arr_cyq[0];
                arr_cyq[0]=maxArr_cyq;
            }
        }
        for(int i=0;i<arr_cyq.length;i++){
            if(arr_cyq[i]==minArr_cyq){                 //最小值与最后一个互换
                arr_cyq[i]=arr_cyq[arr_cyq.length-1];
                arr_cyq[arr_cyq.length-1]=minArr_cyq;
            }
        }
        System.out.println("改变后数组为:");
        for(int ar:arr_cyq){
            System.out.print(ar+"\t");
        }
    }
}
//求0—7所能组成的奇数个数
public class Main {
    public static void main(String[] args) {
        int arr_cyq[]={0,1,2,3,4,5,6,7};
        int n_cyq=8;        //声明数字个数
        int count_cyq=0;        //可生成个数
        count_cyq += n_cyq/2;             //一位数生成个数
        count_cyq += (n_cyq-1)*n_cyq/2;          //两位数生成个数
        count_cyq += (n_cyq-1)*n_cyq*n_cyq/2;            //三位数生成个数
        count_cyq += (n_cyq-1)*n_cyq*n_cyq*n_cyq/2;              //四位数生成个数
        count_cyq += (n_cyq-1)*n_cyq*n_cyq*n_cyq*n_cyq/2;                    //五位数生成个数
        count_cyq += (n_cyq-1)*n_cyq*n_cyq*n_cyq*n_cyq*n_cyq/2;                      //六位数生成个数
        count_cyq += (n_cyq-1)*n_cyq*n_cyq*n_cyq*n_cyq*n_cyq*n_cyq/2;                    //七位数生成个数
        System.out.println("0-7可生成奇数的个数为:"+count_cyq);
    }
}

Tip: 以上习题为文主学习过程中整理,后面有难题过程会做注释,由于时间有限,每道题都做 成Java代码块方便黏贴、查看
持续更新,共勉~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值