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入门。感谢各位铁子的浏览,我们下期见。