1.让用户输入一个成绩(0-100),判断这个成绩属于哪个范围并输出结果(先在word中画出流程图)
(90-100->A 70-90->B 60-70->C <60--D)
import java.util.Scanner;
public class Problem1 {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.println("请输出一个成绩(0-100):");
int score=scan.nextInt();
if(score<=100&&score>=90){
System.out.println("A");
}else if(score<90&&score>=70){
System.out.println("B");
}else if(score<70&&score>=60){
System.out.println("C");
}else if(score<60&&score>=0){
System.out.println("D");
}else{
System.out.println("您输入的分数有误。");
}
}
}
2.让用户输入一个正整数
1) 判断该数是奇数还是偶数,并输出判断结果
2) 判断该数是否是水仙花数,并输出判断结果(只需要考虑3位数)
import java.util.Scanner;
public class Problem2 {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.print("请输入一个正整数:");
int num=scan.nextInt();
if(num<=0){
System.out.println("您输入的数字有误");
}else if(num%2==0){
System.out.println("该数字是偶数");
}else{
System.out.println("该数字是奇数");
}
int ge=num;
int shi=num/10;
int bai=num/100;
if(num>=100&&num<1000&&ge*ge*ge+shi*shi*shi+bai*bai*bai==num){
System.out.println("该数是水仙花数");
}else if(num>=100&&num<1000&&ge*ge*ge+shi*shi*shi+bai*bai*bai!=num){
System.out.println("该数不是水仙花数");
}
//
// for(int x=100;x<1000;x++){
// int ge=x;
// int shi=x/10;
// int bai=x/100;
// if(ge*ge*ge+shi*shi*shi+bai*bai*bai==x){
// System.out.println(x);
// System.out.println(ge);
// System.out.println(shi);
// System.out.println(bai);
// }
// }
}
}
3.让用户输入一个数字,必须是1到7(若输入有误,则提示错误),然后根据用户输入的数字判断是星期几(1:星期一,2:星期二,......,7:星期日。要求判断星期使用switch结构完成)
import java.util.Scanner;
public class Problem3 {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.println("请输入数字(1-7)");
int number=scan.nextInt();
switch(number){
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 3:
System.out.println("星期三");
break;
case 4:
System.out.println("星期四");
break;
case 5:
System.out.println("星期五");
break;
case 6:
System.out.println("星期六");
break;
case 7:
System.out.println("星期日");
break;
default :
System.out.println("您输入的数字有误");
break;
}
}
5.让用户输入一个年份(1900-2100,若不属于这个范围,则提示错误),判断该年是闰年还是平年。
闰年规则:4年一闰,百年不闰;400年一闰。
import java.util.Scanner;
public class Problem5 {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.print("请输入一个年份(1900-2100):");
int year=scan.nextInt();
if(year<1900||year>2100){
System.out.println("您输入的年份有误");
}else if(year>=1900&&year<=2100){
if((year%4==0||year0!=0)&&[email protected]==0){
System.out.println(year+"年是闰年");
}else{
System.out.println(year+"年是平年");
}
}
}
}
6.让用户输入3个数字,然后按照从小到大的顺序输出。
import java.util.Scanner;
public class Problem6 {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.print("请输入三个不同的数字,\n第一个数字:");
int num1=scan.nextInt();
System.out.print("第二个数字:");
int num2=scan.nextInt();
System.out.print("第三个数字:");
int num3=scan.nextInt();
// int max=num1;
// if(max>num2){
// if(max>num3){
// if(num2>num3){
// System.out.println(num3+","+num2+","+num1);
// }else{
// System.out.println(num2+","+num3+","+num1);
// }
// }else{
// System.out.println(num2+","+num1+","+num3);
// }
// }else if(max
// max=num2;
// if(max>num3){
// if(num1>num3){
// System.out.println(num3+","+num1+","+num2);
// }else{
// System.out.println(num1+","+num3+","+num2);
// }
// }else{
// System.out.println(num1+","+num2+","+num3);
// }
// }
int temp;
if(num1>num2){
temp=num2;
num2=num1;
num1=temp;
}
if(num1>num3){
temp=num3;
num3=num1;
num1=temp;
}
if(num2>num3){
temp=num3;
num3=num2;
num2=temp;
}
System.out.println(num1+","+num2+","+num3);
}
}
7.让用户输入1-9999之间的数字(若输入错误,则提示错误),逆序输出用户输入的数字。
import java.util.Scanner;
public class Problem7 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入一个1-9999的数字");
int number = scan.nextInt();
int ge = number % 10;
int shi = number / 10 % 10;
int bai = number / 100 % 10;
int qian = number / 1000 % 10;
if (number <= 0) {
System.out.println("您输入有误");
} else if (number < 10) {
System.out.println("逆序输出结果:" + ge);
} else if (number < 100) {
if (ge == 0) {
System.out.println("逆序输出结果:" + shi);
} else {
System.out.println("逆序输出结果:" + ge + shi);
}
} else if (number < 1000) {
if (ge == 0&&shi==0) {
System.out.println("逆序输出结果:" +bai);
} else if(ge==0){
System.out.println("逆序输出结果:" + shi + bai);
}else{
System.out.println("逆序输出结果:" + ge + shi + bai );
}
} else if (number < 10000) {
if (ge == 0&&shi==0&&bai==0) {
System.out.println("逆序输出结果:" + qian);
} else if(ge==0&&shi==0){
System.out.println("逆序输出结果:" + bai + qian);
}else if(ge==0){
System.out.println("逆序输出结果:" + shi+bai + qian);
}else{
System.out.println("逆序输出结果:" + ge+shi+bai + qian);
}
} else {
System.out.println("您输入有误");
}
}
}
8.让用户输入一个5位数,判断它是不是回文数,输出判断结果。
回文数:如12321是一个回文数,万位与个位相同,十位与千位相同。
import java.util.Scanner;
public class Problem8 {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.println("请输入一个五位数");
int num=scan.nextInt();
int ge=num;
int shi=num/10;
int bai=num/100;
int qian=num/1000;
int wan=num/10000;
if(num<10000||num>=100000){
System.out.println("您输入的数字有误");
}else{
if(ge==wan&&shi==qian){
System.out.println("该数是回文数");
}else{
System.out.println("该数不是回文数");
}
}
}
}
10.企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?
import java.util.Scanner;
public class Problem10 {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.println("请输入利润I(单位:万元)");
int I=scan.nextInt();
double bonus,bonus10,bonus20,bonus40,bonus60,bonus100,bonusOut100;
bonus10=10*0.1;
bonus20=bonus10+10*0.075;
bonus40=bonus20+20*0.05;
bonus60=bonus40+20*0.03;
bonus100=bonus60+40*0.015;
if(I*10000<=100000){
bonus=I*0.1;
System.out.println("应发放奖金总数:"+bonus+"万元");
}else if(I*10000<=200000){
bonus=bonus10+(I-10)*0.075;
System.out.println("应发放奖金总数:"+bonus+"万元");
}else if(I*10000<=400000){
bonus=bonus20+(I-20)*0.05;
System.out.println("应发放奖金总数:"+bonus+"万元");
}else if(I*10000<=600000){
bonus=bonus40+(I-40)*0.03;
System.out.println("应发放奖金总数:"+bonus+"万元");
}else if(I*10000<=1000000){
bonus=bonus60+(I-60)*0.015;
System.out.println("应发放奖金总数:"+bonus+"万元");
}else{
bonus=bonus100+(I-100)*0.01;
System.out.println("应发放奖金总数:"+bonus+"万元");
}
}
}