今天做的是一些流程控制題,if...else,for循環等.
1.給定一個成績,如果成績大於80,則輸出“獎勵”。判斷完后不管條件成不成立都要輸出“繼續努力”。
package lianXiTi;
import java.util.Scanner;
public class panDuanChengJi3_1_1 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("請輸入成績:");
int num = in.nextInt();
if (num > 80) {
System.out.println(" 獎勵");
}
// if(in.nextInt>80){
// System.out.println(" 獎勵");
// }
System.out.println("繼續努力");
}
}
2,假設有整形變量x,判斷x是否為偶數,若為偶數,輸出“x是偶數”,無論x是否為偶數,最后都要在控制台上輸出x的值。
package lianXiTi;
import java.util.Scanner;
public class panDuanXOuShu3_1_2 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println(" 請輸入 x");
int num = in.nextInt();
if (num % 2 == 0) {
System.out.println("x 是偶數");
}
System.out.println(num);
}
}
3.模擬用戶登錄,如果用戶名和密碼正確,則登錄成功,否則登錄失敗 邏輯&& 並且的意思
package lianXiTi;
import java.util.Scanner;
public class moNiDengLu3_2_4 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner str = new Scanner(System.in);
System.out.println("請輸入用戶名:");
String name = str.next();
System.out.println("請輸入密碼:");
String num = str.next();
if (name.equals("abc")&&(num.equals("123"))){
System.out.println("登錄成功");
} else{
System.out.println("登錄失敗");
}
}
}
4.實現幸運抽獎
訓練要點
if-else選擇結構
需求說明抽獎規則:會員號的百位數字等於產生的隨機數字即為幸運會員
實現思路
1. 產生隨機數
2. 從控制台接收一個4位會員號
3. 分解獲得百位數
4. 判斷是否是幸運會員
- 產生隨機數(0~9)的方法如下:
int random=(int)(Math.random()*10);
Math.random() //0-1之間小數*10
代碼如下:
package lianXiTi;
import java.util.Scanner;
public class demo3_2_5 {
public static void main(String[] args){
/*
* 實現幸運抽獎,訓練要點:
* if-else 選擇結構
* 需求說明
* 抽獎規則:會員號的百位數字等於產生的隨機數字即為幸運會員
* 實現思路
* 1.產生隨機數
* 2.從控制台接收一個4位會員號
* 3.分解獲得百位數
* 4.判斷是否是幸運會員
* 產生隨機數(0-9)的方法如下:
* int random=(int)(Math.random()*10);
* Math.random();//0~1之間的小數
*/
Scanner in = new Scanner(System.in);
System.out.println(" 請輸入四位會員號:");
int num = in.nextInt();
int ran = (int) (Math.random() * 10);
if (num / 100 % 10 == ran) {
System.out.println(" 此號碼為幸運會員,謝謝支持"+ran);
} else {
System.out.println("此號碼不是幸運會員,謝謝支持"+ran);
}
}
}
5.
代碼如下:
package lianXiTi;
import java.util.Scanner;
public class demo3_2_7 {
public static void main(String[] args){
Scanner in=new Scanner(System.in);
System.out.println("請輸入是否是會員(Y/N):");
String vip=in.next();
System.out.println("請輸入購物金額:");
double money=in.nextDouble();
double tMoney=0;
if(vip.equals("Y")){
if(money>200){
tMoney=money*.75;
}else{
tMoney=money*.8;
}
}else{
if(money>100){
tMoney=money*.9;
}else{
tMoney=money;
}
}
System.out.println("實際支付:"+tMoney);
}
}
6.玩游戲並支付游戲幣
需求說明
根據游戲類型和游戲時長計算應支付的游戲幣
游戲類型分為兩大類:牌類和休閑競技類
游戲的收費標准:
牌類:10元/小時
休閑競技類:20元/小時
游戲的收費規則:
游戲時間超過10小時,可以打5折
10小時及以下,打8折
分析:
1.輸入游戲類型
2.輸入游戲時長
3.根據時長來判定折扣的不同:大於10小時折扣是0.5,
否則折扣是0.8
4.根據輸入的游戲類型不同:
輸入1:計算游戲幣總數並輸出結果
輸入2:計算游戲幣總數並輸出結果
代碼如下:
package lianXiTi;
import java.util.Scanner;
public class demo3_3_5 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner game=new Scanner(System.in);
System.out.println("請輸入游戲類型(1/2):");
int kind=game.nextInt();
System.out.println("請輸入游戲時長:");
double time=game.nextDouble();
double averageMoney=0;
String gameKind="";
if(kind==1){
gameKind="牌類游戲";
averageMoney=10;
}else{
gameKind="休閑競技類游戲";
averageMoney=20;
}
double zheKou=0;
if(time>10){
zheKou=.5;
}else{
zheKou=.8;
}
double aMoney=time*averageMoney*zheKou;
System.out.println("您玩的是"+gameKind+",時長是"+time+"小時,可以享受"+zheKou+"折優惠,您需要支付"+aMoney);
}
}
7.需求說明
錄入游戲的點擊率,統計點擊率超過100的游戲所占的比例
要求:使用for/if結構統計點擊率100以上的游戲數量
知識點:for循環/if
代碼如下:
package lianXiTi;
import java.util.Scanner;
public class demo3_6_9 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner click = new Scanner(System.in);
int j=0;
double a=0.0;
for (int i = 1; i <= 4; i++) {
System.out.println("請輸入第" + i + "個游戲的點擊率:");
int num = click.nextInt();
if(num>100){
j++;
}
}
System.out.println(j);
a=j/4.0*100;
System.out.println("點擊率大於100的游戲數是:"+j+"\n點擊率大於100的游戲所占的比例為:"+a+"%");
}
}
本題要注意一點,倒數第二行a=j/4.0*100;這里,一定注意是4.0,因為j是int整型,整型除以4還是整型,結果會是0.