Java编程环境和Java程序结构
1、企业发放的奖金根据利润提成。利润低于或等于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%提成,从键盘输入当月利润,求应发放奖金总数?(知识点:基本数据类型,表达式,条件语句)
package Exp01_01_20170566134;
import java.util.Scanner;
public class Exp1 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
double AllMoney=0,salary;
Scanner sc = new Scanner(System.in);
System.out.println("请输入当月利润");
salary = sc.nextInt();
if(salary<=10){
AllMoney = salary*0.1;
}else if((salary>10)&&(salary<=20)){
AllMoney =10*0.1;
AllMoney +=(salary-10)*0.075;
}else if((salary>20)&&(salary<=40)){
AllMoney =10*0.1;
AllMoney +=(salary-10)*0.075;
AllMoney += salary*0.05;
}else if((salary>40)&&(salary<=60)){
AllMoney =10*0.1;
AllMoney +=(salary-10)*0.075;
AllMoney +=(salary-20)*0.05;
AllMoney +=salary*0.03;
}else if((salary>60)&&(salary<=100)){
AllMoney =10*0.1;
AllMoney +=(salary-10)*0.075;
AllMoney +=(salary-20)*0.05;
AllMoney +=(salary-20)*0.03;
AllMoney += salary*0.015;
}else if(salary>100){
AllMoney =10*0.1;
AllMoney +=(salary-10)*0.075;
AllMoney +=(salary-20)*0.05;
AllMoney +=(salary-20)*0.03;
AllMoney += (salary-40)*0.015;
AllMoney +=salary*0.01;
}
else{
System.out.println("输入错误");
}
System.out.println(AllMoney+"万元");
}
}
View Code
2、求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制。(知识点:循环语句、条件语句)
package Exp01_02_20170566134;
import java.util.Scanner;
public class Exp2 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int x,number,sum=0;
int temp;
Scanner sc = new Scanner(System.in);
System.out.println("求x+xx+xxx+xxxx的值?");
System.out.print("请输入数字:");
x = sc.nextInt();
System.out.println("请输入数字个数:");
number = sc.nextInt();
temp =x;
sum = x;
for(int i=1;i<number;i++){
temp=x*((int)Math.pow(10,i))+temp;
sum +=temp;
}
System.out.println("结果为"+sum);
}
}
View Code
3、在控制台输出以下图形(知识点:表达式、数据输入、循环语句、条件语句)
图1 图2 图3 图4
package Exp01_03_20170566134;
public class Exp3 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
for(int i=1;i<=6;i++){
for(int j=1;j<=i;j++){
System.out.print(j);
}
System.out.println("");
}
System.out.println("---------------");
for(int i=1;i<=6;i++){
for(int j=1;j<=7-i;j++){
System.out.print(j);
}
System.out.println("");
}
System.out.println("---------------");
for(int i=1;i<=6;i++){
for(int k=0;k<7-i;k++){
System.out.print(" ");
}
for(int j=1;j<=7-i;j++){
System.out.print(j);
}
System.out.println("");
}
System.out.println("---------------");
for(int i=1;i<=6;i++){
for(int k=0;k<i;k++){
System.out.print(" ");
}
for(int j=1;j<=7-i;j++){
System.out.print(j);
}
System.out.println("");
}
}
}
View Code
要求:
(1)由一个程序菜单供用户选择,如下:
-------------------------------------------------
【1】输入图形的行数 【2】打印哪个图形 【3】退出
-------------------------------------------------
(2)输入图形的行数的方法为:
String rows_input =
JOptionPane.showInputDialog(“请输入图形的行号”);
int rows = Integer.parseInt(rows_input);
(3)直到用户在程序菜单里输入3时程序才结束。
4、打印出如下图案(菱形)
*
***
******
********
******
***
*
要求:
(1)行数由用户自己输入,不同的行数对应不同的菱形;
(2)行数应该是奇数行,如果输入偶数行,应提示用户重新输入。
package Exp01_04_20170566134;
import javax.swing.JOptionPane;
public class Exp4 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int flag = 0;
int B_hang;
while(flag == 0){
String rows_input =JOptionPane.showInputDialog("请输入图形的行号");
int rows = Integer.parseInt(rows_input);
String tu_input =JOptionPane.showInputDialog("请选择打印图形");
int tuxing = Integer.parseInt(rows_input);
if(rows %2 == 1 ){
B_hang = (rows+1)/2;
for(int i=1;i<=B_hang;i++){
for(int k=B_hang;k>i;k--){
System.out.print(" ");
}
for(int j=0;j<i*2-1;j++){
System.out.print("*");
}
System.out.println();
}
for(int i=1;i<B_hang;i++){
for(int k=0;k<i;k++){
System.out.print(" ");
}
for(int j=B_hang*2-1;j>i*2;j--){
System.out.print("*");
}
System.out.println();
}
flag = 1;
}
}
}
}
View Code