一、实验目的
1.掌握选择结构控制语句。
2.掌握循环结构控制语句。
3.掌握跳转语句的用法。
二、实验硬、软件环境
Windows计算机和Eclipse软件
三、实验内容及步骤
1.现在有一位先生买了彩票:如果体彩中了500万,他买车、资助新冠肺炎防疫工程、去首都北京旅游;如果没中,他继续买下一期体彩,继续烧高香。
代码及运行结果如下:
package com.itheima.first;
public class 彩票 {
public static void main(String[] args) {
boolean flag1=false;
if(flag1) {
System.out.println("中奖500万,买车、资助新冠肺炎防疫工程、去首都北京旅游");
}else{
System.out.println("继续买下一期体彩,继续烧高香");}}}
2.计算100以内的偶数之和。
代码及运行结果如下:
package com.itheima.first;
public class 计算100以内的偶数和 {
public static void main(String[] args) {
int sum=0;
for (int i=1;i <=100; i++){
if(i%2!=0) {
continue;
}
sum +=i;
}
System.out.println("sum="+sum);
}
}
3.个税计算器,输入工资后,打印应缴纳的个税。个税计算公式:
应纳税所得额 = 工资金额 - 各项社会保险费 - 起征点(3500元)
应纳税额 = 应纳税所得额 × 税率 - 速算扣除数
其中各项社会保险费我们在本程序中设置为0即可,不用考虑。
税率及速算扣除数对应表:
应纳税所得额 | 税率 | 速算扣除数(元) |
不超过 1500 元 | 3% | 0 |
超过 1500 元至 4500 元 | 10% | 105 |
超过 4500 元至 9000 元 | 20% | 555 |
超过 9000 元至 35000 元 | 25% | 1005 |
超过 35000 元至 55000 元 | 30% | 2755 |
超过 55000 元至 80000 元 | 35% | 5505 |
超过 80000 元 | 45% | 13505 |
例如工资金额为 5000,那么应纳税所得额为 1500(5000-3500),应纳税额为 45 元(1500 * 3% - 0)。
代码及运行结果:
package com.itheima.first;
import java.util.Scanner;
public class 个税计算器 {
public static void main(String[] args) {
Scanner sc =new Scanner(System.in);
System.out.println("输入工资金额");
double money = sc.nextDouble();
double a= money-0-3500;
//应纳税所得额 = 工资金额 - 各项社会保险费(0元) - 起征点(3500元)
System.out.println("应纳所得税:"+a);
double c=a*0.03;
double d=a*0.10-105;
double e=a*0.20-555;
double f=a*0.25-1005;
double g=a*0.30-2755;
double h=a*0.35-5505;
double j=a*0.45-13505;
if(a<=1500) {
System.out.println("应纳税额:"+c);
}else if(a>1500&&a<=4500) {
System.out.println("应纳税额:"+d);
}else if(a>4500&&a<=9000) {
System.out.println("应纳税额:"+e);
}else if(a>9000&&a<=35000) {
System.out.println("应纳税额:"+f);
}else if(a>35000&&a<=55000) {
System.out.println("应纳税额:"+g);
}else if(a>55000&&a<=8000) {
System.out.println("应纳税额:"+h);
}else if(a>8000) {
System.out.println("应纳税额:"+j);
}
}
}
4.循环输入多个成绩,每输入一个分数,输出对应的五级制,如果用户输入-1,循环结束。(90分以上为“优秀”;80-89为“良好”;70-79为“中等”;60-69为“及格”;60分以下为“不及格”)。
代码及运行结果如下:
package com.itheima.first;
import java.util.Scanner;
public class 输入成绩得等级 {
public static void main(String[] args) {
Scanner sc =new Scanner(System.in);
System.out.println("请输入学生的成绩:");
double garde = sc.nextDouble();
while(garde>=0&&garde<=100){
if(garde>=90) {
System.out.println("第一级制:优秀");
}else if(garde>=80) {
System.out.println("第二级制:良好");
}else if(garde>=70) {
System.out.println("第三级制:中等");
}else if(garde>=60) {
System.out.println("第四级制:及格");
}else {
System.out.println("第五级制:不及格");
}
garde =sc.nextDouble();
}
System.out.println("输入错误");}
}
四、实验结果及分析
1.通过此次实验我熟悉了选择结构语句中的if条件语句和switch条件语句,循环结构语句中的while循环语句、do...while循环语句、for循环语句、循环嵌套和跳转语句,运用这些语句需要严格遵循一定的语法格式;
2.实验四中运用whlie语句和if...else语句的循环嵌套,为了实现循环输入多个成绩,每输入一个分数,输出对应的五级制,要用到scanner,不可以遗忘接受数“garde =sc.nextDouble();”否则将会出现死循环。
3.在实验过程中,会出现程序内容未出错但是,与需要结果不一样,这时需要我们仔细核对各个语句的语法格式,以及定义的变量和所用变量的数据类型等是否出现差错。