第五周上机作业
1.打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。(知识点:循环语句、条件语句)
package test; import java.util.Scanner; public class ree{ public static void main(String[] args) { int a,b,c; System.out.println("三位数中所有的水仙花数:"); for(int n=100;n<=999;n++){ a=n/100;//获取百位数字 b=n%100/10;//获取十位数字 c=n%10;//获取个位数字 if(a*a*a+b*b*b+c*c*c==n){ System.out.println(n); } } } }
2..在控制台输出以下图形(知识点:循环语句、条件语句)
(1)
package www; import java.util.Scanner; public class test{ public static void main(String[] args) { Scanner sc=new Scanner(System.in); for(int a=1;a<7;a++) { for(int b=1;b<=a;b++) { System.out.print(b); } System.out.println(); } } }
(2)
package www; import java.util.Scanner; public class test{ public static void main(String[] args) { Scanner sc=new Scanner(System.in); for(int a=1;a<7;a++) { for(int b=1;b<=7-a;b++) { System.out.print(b); } System.out.println(); } } }
(3)
package www; import java.util.Scanner; public class test{ public static void main(String[] args) { Scanner sc=new Scanner(System.in); for(int a=1;a<7;a++) { for(int b=a;b>0;b--) { System.out.print(b); } System.out.println(); } } }
(4)
package www; import java.util.Scanner; public class test{ public static void main(String[] args) { Scanner sc=new Scanner(System.in); for(int a=6;a>0;a--) { for(int b=0;b<6-a;b++) { System.out.print(" "); } for(int i=1;i<=a;i++) { System.out.print(i); } System.out.println(""); } } }
3.输入年月日,判断这是这一年中的第几天(知识点:循环语句、条件语句
package www; import java.util.Scanner; public class test{ public static void main(String[] args) { int year; int mouth; int day = 0; int days; int d = 0; // 累计天数 int e = 0; Scanner scanner = new Scanner(System.in); //判断输入的年份和月份和日期是否错误 do { System.out.println("输入年:"); year = scanner.nextInt(); System.out.println("输入月:"); mouth = scanner.nextInt(); System.out.println("输入日:"); days = scanner.nextInt(); if (year < 0 || mouth < 0 || mouth > 12 || days < 0 || days > 31) { System.out.println("input error!"); e = 1; } } while (e == 1); for (int i = 1; i < mouth; i++) { switch (i) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: { day = 31; break; } case 4: case 6: case 9: case 11: { day = 30; break; } case 2: { if ((year % 100 != 0 && year % 4 == 0) || (year % 100 == 0 && year % 400 == 0)) { day = 29; } else { day = 28; } } default: break; } d += day; } System.out.println("这是" + year + "年的" + (d + days) + "天"); } }
4.由控制台输入一个4位整数,求将该数反转以后的数,如原数为1234,反转后的数位4321(知识点:循环语句、条件语句
package www; import java.util.Scanner; public class test{ public static void main(String[] args) { Scanner sc=new Scanner(System.in); System.out.println("请输入一个四位数"); int x=sc.nextInt(); int gewei=x%10; int shiwei=x%10/10; int baiwei=x%100/100; int qianwei=x/1000; System.out.println("原先的数为:"+x+"现在的为"+(qianwei+baiwei*10+shiwei*100+gewei*1000)); } }