Java入門經典例題(二)
這期依然為大家帶來Java入門經典例題,
一. 撰寫程式數一下 1到 任意整數 的所有整數中出現多少個數字9,
上代碼
import java.util.Scanner;
public class TextDemo {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入一個正整數");
int num1 = scanner.nextInt();
int num2 = 0;
if (num1 < 9){
System.out.println("沒有出現過9");
}else {
for (int i = 1; i <= num1 ; i++){
if (i % 10 == 9){
num2 += 1;
}
}
System.out.println("9的個數為:" + num2);
}
}
}
運行結果如下
當輸入的數字小于9時,

當輸入的數字大于9時,

二.求出0~999之間的所有“水仙花數”并輸出,
(“水仙花數”是指一個三位數,其各位數字的立方和確好等于該數本身,如:153=13+53+33,則153是一個“水仙花數”,)
public class TextDemo {
public static void main(String[] args) {
for(int i = 100; i < 1000; i++ ){
int a = i / 100;//求百位上的數字
int b = i / 10 % 10;//求十位上的數字
int c = i % 10;//求個位上的數字
if (i == (a * a * a + b * b * b + c * c * c)){
System.out.println(i);
}
}
}
}

三.撰寫代碼模擬三次密碼輸入的場景,
最多能輸入三次密碼;密碼正確,提示“登錄成功”;密碼錯誤, 可以重新輸入,最多輸入三次,三次均錯,則提示退出程式,
上代碼
import java.util.Scanner;
public class TextDemo {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入你設定的數字密碼");
long keyword = scanner.nextLong();
judge(keyword);
}
public static void judge(long keyword) {
System.out.println("請輸入你的密碼");
Scanner scanner = new Scanner(System.in);
long num = scanner.nextLong();
for (int i =0; i < 2;i++){
if (num == keyword){
System.out.println("登陸成功");
return;
}else {
System.out.println("密碼錯誤,請重新輸入");
num = scanner.nextLong();
}
}
System.out.println("錯誤超過三次,程式將退出");
}
}
運行結果如下
登錄成功時,

登陸失敗時,

四.寫一個函式回傳引數二進制中 1 的個數,
比如: 15的二進制為0000 1111 ,其中有4 個 1,
import java.util.Scanner;
public class TextDemo {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入一個整數");
int num = scanner.nextInt();
int count = 0;
for (int i = 0;i < 32;i++){
if (((num >> i) & 1) == 1){
count ++ ;
}
}
System.out.println(count);
}
}
運行結果如下

五.獲取一個數二進制序列中所有的偶數位和奇數位, 分別輸出二進制序列,
import java.util.Scanner;
public class TextDemo {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入一個數字");
int num = scanner.nextInt();
for (int i = 0;i < 32 ;i += 2){
System.out.print((num >> i) & 1);
}
System.out.println();
for (int i = 1;i < 32 ;i += 2){
System.out.print((num >> i) & 1);
}
System.out.println();
}
}
運行結果如下

六.輸出一個整數的每一位
在這里,我使用了遞回方法,
import java.util.Scanner;
public class TextDemo {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入一個數字");
int num = scanner.nextInt();
Print(num);
}
public static void Print(int num) {
if (num >9)
Print(num /10);
}
System.out.print(num % 10 + " ");
}
}
運行結果如下

七.猜數字游戲
import java.util.Random;
import java.util.Scanner;;
public class TestDemo {
public static void main(String[] args) {
Random random = new Random(); // 默認隨機種子是系統時間
Scanner sc = new Scanner(System.in);
int toGuess = random.nextInt(100);
// System.out.println("toGuess: " + toGuess);
while (true) {
System.out.println("請輸入要輸入的數字: (1-100)");
int num = sc.nextInt();
if (num < toGuess) {
System.out.println("小了");
} else if (num > toGuess) {
System.out.println("大了");
} else {
System.out.println("恭喜回答正確");
break;
}
}
sc.close();
}
}
運行結果如下

八. 列印X圖形
當 i == j 時會列印 ‘x’ ;當i + j == num + 1 時會列印’x’;其余情況列印“" ",
import java.util.Scanner;
public class TextDemo {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入列印行數:");
int num= scanner.nextInt();
//第一層回圈控制行數
for(int i = 1;i <= num;i++){
//第二層回圈控制行
for(int j = 1;j <= num;j++){
//當 i == j 時會列印 'x' ;當i + j == num + 1 時會列印'x'
if(j == i || j + i == num + 1) {
System.out.print("x");
}
else
System.out.print(" ");
}
System.out.print("\n");
}
}
}
運行結果如下

Java入門的經典例題差不多就結束了,下期依然回歸Java入門,感謝各位鐵子的瀏覽,我們下期見,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/246541.html
標籤:java
下一篇:用JAVA實作2048小游戲
