Javase基础语法_分支结构等_作业

发布时间:2026/7/31 17:49:30
Javase基础语法_分支结构等_作业 1.水仙花数分析如1531^35^33^3则153是一个“水仙花数“。因此1.求这个数有几位 2.求这个数字的每一位这时我们可以定义一个count并且/10/10一次去掉一位count1for (int i1;i999999;i){ //1.求这个数字有几位 int count 0; int tmpi; while(tmp !0){ count; tmp/10; } tmpi;这里我们要求每一位上的数字153%103并且/10去掉一位因此我们要一直%10/10//2.求tmp的每一位 int sum0; while (tmp!0){ sumMath.pow(tmp%10,count);//这个代表比如tmp%103就是3的3次 tmp/10; }所以完整代码public static void main(String[] args) { for (int i1;i999999;i){ //1.求这个数字有几位 int count 0; int tmpi; while(tmp !0){ count; tmp/10; } tmpi; //2.求tmp的每一位 int sum0; while (tmp!0){ sumMath.pow(tmp%10,count);//这个代表比如tmp%103就是3的3次 tmp/10; } if (sumi){ System.out.println(i); } } }2.which括号里不能是long float double Boolean可以是byte、char、short、int3.数字9 出现的次数编写程序数一下 1到 100 的所有整数中出现多少个数字91-89的9都在个位数上我们直接%1090以上的在十位我们/10public static void main(String[] args) { int count 0; for (int i1;i100;i){ if (i%109){ count; } if (i/109){ count; } } System.out.println(count); }如果有多少个数字包含9public static void main(String[] args) { int count 0; for (int i1;i100;i){ if (i%109){ count; } else if (i/109){ count; } } System.out.println(count); }4.求2个整数的最大公约数给定两个数求这两个数的最大公约数;例如输入20 40 输出20当余数为零那除数就是最大公约数public static void main(String[] args) { int a24; int b18; int ca%b; while (c!0){ ab; bc; ca%b; } System.out.println(b); }5.计算分数的值计算1/1-1/21/3-1/41/5 …… 1/99 - 1/100 的值 。public static void main(String[] args) { double sum0; int flg1; for (int i1;i100;i){ sumsumflg*1.0/i; flg-flg; } System.out.println(sum); }6.实现猜数字游戏完成猜数字游戏 用户输入数字判断该数字是大于小于还是等于随机生成的数字等于的时候退出程序。import java.util.Random; import java.util.Scanner; public static void main(String[] args) { //生成随机数 Random random new Random(); int randNum random.nextInt(100);//[0,100) System.out.println(randNum); //输入 Scanner scanner new Scanner(System.in); //猜数字 int count 3;//最多猜三回 while (count !0){ System.out.println(请输入你要猜测的数字); int num scanner.nextInt(); if (numrandNum){ count--; System.out.println(猜小了,你还有count次机会); } else if (numrandNum) { count--; System.out.println(猜大了,你还有count次机会); }else { System.out.println(猜对了); return; } } System.out.println(你的机会用完了); }7.打印 X 图形多组输入一个整数2~20表示输出的行数也表示组成“X”的反斜线和正斜线的长度。public static void main(String[] args) { Scanner scanner new Scanner(System.in); int n scanner.nextInt(); for (int i0;in;i){ for (int j0;jn;j){ if (ij || ij(n-1)){ System.out.print(*); }else { System.out.print( ); } } System.out.println(); } }8.输出一个整数的每一位输出一个整数的每一位如123的每一位是321public static void main(String[] args) { int n123; while (n!0){ System.out.println(n%10); n/10; } }9.模拟登陆编写代码模拟三次密码输入的场景。 最多能输入三次密码密码正确提示“登录成功”,密码错误 可以重新输 入最多输入三次。三次均错则提示退出程序public static void main(String[] args) { Scanner scanner new Scanner(System.in); int count 3; while (count!0){ System.out.println(请输入密码); String password scanner.nextLine(); // if (password123456){ if (password.equals(123456)){ System.out.println(密码正确); return; }else { System.out.println(密码错误你还有count次机会); count--; } } }10.求最大值方法的重载在同一个类中定义多个方法要求不仅可以求2个整数的最大值还可以求3个小数的最大值public static int zuida(int a,int b){ return ab?a:b; } public static double zuida(double a,double b,double c){ return (ab?a:b)c?(ab?a:b):c; } public static void main(String[] args) { System.out.println(zuida(1.1,1.2,1.3)); }