- 第一章
- 第二章
- 第三章
- 1、企业发放的奖金根据利润提成。利润低于或等于10万元时,奖金可提10%;利润高于10万元,低于或等于20万元时,高于10万元的部分,可提成7.5%;高于20万,低于或等于40万时,高于20万元的部分,可提成5%;高于40万,低于或等于60万时,高于40万元的部分,可提成3%;高于60万,低于或等于100万时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,输入一个整数变量为当月利润,求应发放奖金总数?(知识点:条件语句) [必做题]
- 2,输入一个成绩a,使用switch结构求出a的等级。A:90-100,B:80-89,C:70-79,D:60-69,E:0~59(知识点:条件语句switch)[必做题]
- 3,输入一个数字,判断是一个奇数还是偶数(知识点:条件语句) [必做题]
- 第四章
- 1、编写一个简单程序,要求数组长度为5,分别赋值10,20,30,40,50,在控制台输出该数组的值。(知识点:数组定义和创建、一维数组初始化)[必做题]
- 2,将一个字符数组的值(neusofteducation)拷贝到另一个字符数组中。(知识点:数组复制) [必做题]
- 3、给定一个有9个整数(1,6,2,3,9,4,5,7,8)的数组,先排序,然后输出排序后的数组的值。(知识点:Arrays.sort排序、冒泡排序) [必做题]
- 4、 输出一个double型二维数组(长度分别为5、4,值自己设定)的值。(知识点:数组定义和创建、多维数组初始化、数组遍历) [必做题]
- 5、 在一个有8个整数(18,25,7,36,13,2,89,63)的数组中找出其中最大的数及其下标。(知识点:数组遍历、数组元素访问) [必做题]
- 第五章
- 第六章
- 第七章
- 第十章
一、牛客网、leetcode学习(每天3道)
二、课后作业
三、3个app
(1)
(2)
(3)在线考试系统
第一章
第二章
1、已知a,b均是整型变量,写出将a,b两个变量中的值互换的程序。(知识点:变量和运算符综合应用) [必做题]
解:
package Task_neuedu;public class Task1 {public static void main(String[] args) {/*1、已知a,b均是整型变量,写出将a,b两个变量中的值互换的程序。(知识点:变量和运算符综合应用) [必做题]*/int a = 1;int b = 2;System.out.println("转换前:a:" + a + " " + "b:" + b);//使用第三个“杯子”int temp = a;a = b;b = temp;System.out.println("互换后:a:" + a + " " + "b:" + b);}}
2、给定一个0~1000的整数,求各位数的和,例如345的结果是3+4+5=12注:分解数字既可以先除后模也可以先模后除(知识点:变量和运算符综合应用) [必做题]
解:
package Task_neuedu;import javax.sound.midi.SysexMessage;import java.util.Scanner;public class Task2 {public static void main(String[] args) {/** 给定一个0~1000的整数,求各位数的和,例如345的结果是3+4+5=12* 注:分解数字既可以先除后模也可以先模后除(知识点:变量和运算符综合应用) [必做题]* *///for循环,若用户输入不规范,重新提醒,并再次验证!for (; ; ) {//提醒输入System.out.println("您好!请您输入一个0~1000的整数:");Scanner s = new Scanner(System.in);//使用一个变量存储用户输入的值int num = s.nextInt();//对数据进行处理,把每个位的数提取出来,然后使用变量进行存储if (num <= 0 || num >= 1000) {System.out.println("请按要求输入!");} else {int sum = 0; //和int g = num % 10; //取个位上的数int h = num % 100 / 10; //取十位上的数int b = num / 100; //取百位上的数sum = g + h + b; //运算并输出结果System.out.println(sum);break;}}}}
3、华氏温度和摄氏温度互相转换,从华氏度变成摄氏度你只要减去32,乘以5再除以9就行了,将摄氏度转成华氏度,直接乘以9,除以5,再加上32即行。[选做题]
package Task_neuedu;import java.util.Scanner;public class Task3 {public static void main(String[] args) {/** 3、华氏温度和摄氏温度互相转换,从华氏度变成摄氏度你只要减去32,乘以5再除以9就行了,* 将摄氏度转成华氏度,直接乘以9,除以5,再加上32即行。[选做题]* */Scanner sc=new Scanner(System.in);System.out.println("------------------------------");System.out.println(" 请输入数字选择功能:");System.out.println(" 华氏温度转摄氏温度----1");System.out.println(" 摄氏温度转华氏温度----2");System.out.println("------------------------------");int input =sc.nextInt();switch (input){case 1:System.out.println("请输入华氏温度");double input1=sc.nextDouble();double swith1=(input1-32)*5/9; //转换算法System.out.println("对应的摄氏温度为:"+swith1+"°C");break;case 2:System.out.println("请输入摄氏温度");double input2=sc.nextDouble();double switch2=input2*9/5 +32; //转换算法System.out.println("对应的华氏温度为"+switch2+"℉");break;default:System.out.println("请正确选择对应功能!");}}}
4、给定一个任意的大写字母A~Z,转换为小写字母。 (知识点:变量和运算符) [选做题]
package Task_neuedu;import java.util.Scanner;public class Task4 {public static void main(String[] args) {/* 4、给定一个任意的大写字母A~Z,转换为小写字母。 (知识点:变量和运算符) [选做题]*/System.out.println("请您输入一个字母");Scanner sc = new Scanner(System.in);String str = sc.next();char str1 = str.charAt(0);if (str1 >= 65 && str1 <= 90) {str1 += 32; //转大写System.out.println(str1);} else { //转小写str1 -= 32;System.out.println(str1);}}}
第三章
1、企业发放的奖金根据利润提成。利润低于或等于10万元时,奖金可提10%;利润高于10万元,低于或等于20万元时,高于10万元的部分,可提成7.5%;高于20万,低于或等于40万时,高于20万元的部分,可提成5%;高于40万,低于或等于60万时,高于40万元的部分,可提成3%;高于60万,低于或等于100万时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,输入一个整数变量为当月利润,求应发放奖金总数?(知识点:条件语句) [必做题]
package Task_neuedu;import java.util.Scanner;/** 企业发放的奖金根据利润提成。利润低于或等于10万元时,奖金可提10%;* 利润高于10万元,低于或等于20万元时,高于10万元的部分,可提成7.5%;* 高于20万,低于或等于40万时,高于20万元的部分,可提成5%;* 高于40万,低于或等于60万时,高于40万元的部分,可提成3%;* 高于60万,低于或等于100万时,高于60万元的部分,可提成1.5%,高于100万元时,* 超过100万元的部分按1%提成,输入一个整数变量为当月利润,求应发放奖金总数?(知识点:条件语句) [必做题]* */public class ch301 {public static void main(String[] args) {System.out.println("请输入利润:");Scanner scanner=new Scanner(System.in);double money=scanner.nextDouble(); //存储用户输入的值double award=0.0;//使用if else if else 判断输入奖金的数对应计算的方式if (0<=money&&money<=10){award=money*0.01;}else if (money>10&&money<=20){award=10*0.01+(money-10)*0.075;}else if(money>20&&money<=40){award=10*0.01+10*0.075+(money-20)*0.05;}else {award=10*0.01+10*0.075+20*0.05+(money-40)*0.03;} //这里先高于40万的情况处理~System.out.println(award+"万");}}
2,输入一个成绩a,使用switch结构求出a的等级。A:90-100,B:80-89,C:70-79,D:60-69,E:0~59(知识点:条件语句switch)[必做题]
package Task_neuedu;import java.util.Scanner;public class ch302 {public static void main(String[] args) {/*输入一个成绩a,使用switch结构求出a的等级。A:90-100,B:80-89,C:70-79,D:60-69,E:0~59(知识点:条件语句switch)[必做题]*/Scanner scanner=new Scanner(System.in);int num=scanner.nextInt(); //存储用户输入的值switch (num/10){case 10:case 9:System.out.println("A");break;case 8:System.out.println("B");break;case 7:System.out.println("C");break;case 6:System.out.println("D");break;case 5:case 3:case 4:case 2:case 1:2case 0:System.out.println("E");break;default:System.out.println("请输入0~100之间的数字");}}}
3,输入一个数字,判断是一个奇数还是偶数(知识点:条件语句) [必做题]
package Task_neuedu;/*输入一个数字,判断是一个奇数还是偶数(知识点:条件语句) [必做题]*/import java.util.Scanner;public class ch303 {public static void main(String[] args) {Scanner scanner=new Scanner(System.in);int num=scanner.nextInt(); //存储用户输入的值if (num!=0){if (num%2==0){System.out.println("不是奇数,是偶数");}else{System.out.println("是偶数,不是奇数");}}else {System.out.println("0不是偶数也不是奇数");}}}
第四章
1、编写一个简单程序,要求数组长度为5,分别赋值10,20,30,40,50,在控制台输出该数组的值。(知识点:数组定义和创建、一维数组初始化)[必做题]
package Task_neuedu;/** 编写一个简单程序,要求数组长度为5,* 分别赋值10,20,30,40,50,在控制台输出该数组的值。* (知识点:数组定义和创建、一维数组初始化)[必做题]** */public class ch0401 {public static void main(String[] args) {int [] arr=new int[5];for (int i = 0; i < arr.length ; i++) {arr[i]=(i+1)*10;System.out.println(arr[i]);}}}
2,将一个字符数组的值(neusofteducation)拷贝到另一个字符数组中。(知识点:数组复制) [必做题]
package Task_neuedu;/*将一个字符数组的值(neusofteducation)拷贝到另一个字符数组中。(知识点:数组复制) [必做题]*/public class ch0402 {public static void main(String[] args) {int [] arr1=new int[5];int [] arr2=new int[5];for (int i = 0; i < arr1.length ; i++) {arr1[i]=(i+1)*11;System.out.println("复制前数组元素:"+arr1[i]);arr2[i]=arr1[i];System.out.print("复制后的数组"+" "+arr2[i]);}}}
3、给定一个有9个整数(1,6,2,3,9,4,5,7,8)的数组,先排序,然后输出排序后的数组的值。(知识点:Arrays.sort排序、冒泡排序) [必做题]
package Task_neuedu;/*3、给定一个有9个整数(1,6,2,3,9,4,5,7,8)的数组,先排序,然后输出排序后的数组的值。(知识点:Arrays.sort排序、冒泡排序) [必做题]*/public class ch0402 {public static void main(String[] args) {int [] arr2={1,6,2,3,9,4,5,7,8};for (int i = 1; i < arr2.length ; i++) {for (int j = 0; j < arr2.length-i ; j++) {if (arr2[j] > arr2[j+1]) {int max=arr2[j];arr2[j]=arr2[j+1];arr2[j+1]=max;}}}for (int h = 0; h < arr2.length ; h++) {System.out.println(arr2[h]);}}}
4、 输出一个double型二维数组(长度分别为5、4,值自己设定)的值。(知识点:数组定义和创建、多维数组初始化、数组遍历) [必做题]
package Task_neuedu;/*4、 输出一个double型二维数组(长度分别为5、4,值自己设定)的值。(知识点:数组定义和创建、多维数组初始化、数组遍历) [必做题]*/public class ch0402 {public static void main(String[] args) {double [] [] arr1=new double [5][4];arr1[0][0]=9.02;} }
5、 在一个有8个整数(18,25,7,36,13,2,89,63)的数组中找出其中最大的数及其下标。(知识点:数组遍历、数组元素访问) [必做题]
package Task_neuedu;/*5、 在一个有8个整数(18,25,7,36,13,2,89,63)的数组中找出其中最大的数及其下标。(知识点:数组遍历、数组元素访问) [必做题]*/public class ch0402 {public static void main(String[] args) {int [] arr={18,25,7,36,13,2,89,63};int max=arr[0];int index=0;for (int i = 0; i <arr.length ; i++) {if (max<arr[i]){max=arr[i];}if(arr[i]==max){index=i;}}System.out.println("最大值为:"+max+"下标为"+index);}}
第五章
1、编写一个方法,求整数n的阶乘,例如5的阶乘是12345
/*1、编写一个方法,求整数n的阶乘,例如5的阶乘是1*2*3*4*5。*/import java.util.Scanner;public class Task {public static int func1(int n) {int i = 0;int m = 1;for (i = 1; i <= n; i++) {m = m * i;}System.out.println("n的阶乘是:"+m);return m;}}
2、编写一个方法,判断该年份是平年还是闰年。
public class Task {public static void main(String[] args) {Exercise_05_02.method1(2012);}public static void method1(int year) {if(year%4==0&&year%100!=0||year%400==0){System.out.println("闰年");}else{System.out.println("不是闰年");}}}
第六章
1,
package Task_neuedu;/*** 1、定义一个点类Point,* 包含2个成员变量x、y分别表示x和y坐标,* 2个构造器Point()和Point(int x0,y0),* 以及一个movePoint(int dx,int dy)方法实现点的位置移动,* 创建两个Point对象p1、p2,分别调用movePoint方法后,打印p1和p2的坐标。[必做题]*/public class Point {private int x;private int y;public Point() {}public int getX() {return x;}public void setX(int x) {this.x = x;}public int getY() {return y;}public void setY(int y) {this.y = y;}public Point(int x, int y) {this.x = x;this.y = y;}public void movePoint(int dx,int dy){System.out.println(dx+" "+dy);}//在本类直接测试public static void main(String[] args) {Point p1=new Point();p1.movePoint(1,2);Point p2=new Point();p2.movePoint(22,2);}}
第七章
第十章
1,存储客户信息,显示客户账户余额(HashMap)
package task14;/*1、编写一个程序,创建一个 HashMap对象,用于存储银行储户的信息(其中储户的主要信息有储户的ID,姓名和余额)。另外,计算并显示其中某个储户的当前余额。 [选做题]*/import java.util.HashMap;import java.util.Set;public class ClientTest {public static void main(String[] args) {/* Client c1=new Client(1,"林一",899.0);Client c2=new Client(2,"林二",1999.20);HashMap<Client, Double> h1=new HashMap<Client, Double>();h1.put(c1, c1.getMoney());h1.put(c2,c1.getMoney());//遍历Map数组Set<Client> s=h1.keySet();for (Client s2:s) {System.out.println("客户信息:"+s2.getName()+"余额"+s2.getMoney());}*///设置客户信息Client c1=new Client(1,"林一",899.0);Client c2=new Client(2,"林二",1999.20);//定义一个hashMap存储客户信息HashMap<Integer,Client> h1=new HashMap<Integer, Client>();h1.put(1,c1);h1.put(2,c2);//遍历Map数组Set<Integer> keys=h1.keySet();for (Integer s2:keys) {System.out.println("客户ID: "+s2+" "+"当前账户余额: "+h1.get(s2).getMoney()+"元");}}}
