4.2上机作业
1. 打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。(知识点:循环语句、条件语句)
public class fourth { public static void main(String[] args) { for (int i = 100; i <1000 ; i++) { int BaiNum = i/100; int ShiNum = i/10%10; int GeNum = i%10; if(BaiNum*BaiNum*BaiNum + ShiNum*ShiNum*ShiNum+GeNum*GeNum*GeNum == i) { System.out.println(i+"为水仙花数"); } } } }
2.在控制台输出以下图形(知识点:循环语句、条件语句)
(1)
public class fourth { public static void main(String[] args) { int n,i; for(n=1;n<=6;n++){ for(i=1;i<=n;i++) System.out.print(i); System.out.printf("\n"); } } }
(2)
public class fourth { public static void main(String[] args) { int n,i; for(n=1;n<=6;n++){ for(i=1;i<=7-n;i++){ System.out.print(i); } System.out.printf("\n"); } } }
(3)
public class fourth {
public static void main(String[] args) {
for(int a = 1;a <= 6;a++)
{
for(int i = 1;i <= 2 * (6 - a);i++)
System.out.print(" ");
for(int i = a;i >= 1;i--)
System.out.printf("%d ",i);
System.out.print("\n");
}
System.out.print("\n");
}
}
3. 输入年月日,判断这是这一年中的第几天(知识点:循环语句、条件语句)
import java.util.*; public class fourth { public static void main(String[] args) { int day=0; int month=0; int year=0; int sum=0; int leap; System.out.println("请输入年 月 日"); Scanner input=new Scanner(System.in); year=input.nextInt(); month=input.nextInt(); day=input.nextInt(); switch(month) { case 1: sum=0;break; case 2: sum=31;break; case 3: sum=59;break; case 4: sum=90;break; case 5: sum=120;break; case 6: sum=151;break; case 7: sum=181;break; case 8: sum=212;break; case 9: sum=243;break; case 10: sum=273;break; case 11: sum=304;break; case 12: sum=334;break; default: System.out.println("请正确的输入年 月 日");break; } sum=sum+day; if(month>=0&&month<=12&&day>=1&&day<=31) { if(year%400==0||year%4==0&&year%100!=0) { leap=1; }else{ leap=0; } if(leap==1&&month>2) { sum++; System.out.println(year+"年"+month+"月"+day+"号是这一年的第"+sum+"天。"); }else { System.out.println(year+"年"+month+"月"+day+"号是这一年的第"+sum+"天。"); } } } }
4.由控制台输入一个4位整数,求将该数反转以后的数,如原数为1234,反转后的数位4321(知识点:循环语句、条件语句)
import java.util.*; public class fourth { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入一个4位整数:"); int x = sc.nextInt(); if(x>999 && x<=9999){ int gewei = x%10; int shiwei = x % 100 / 10; int baiwei = x%1000/100; int qianwei = x/1000; int sum = qianwei + baiwei*10 +shiwei*100 +gewei*1000; System.out.println(sum); } else{ System.out.println("输入错误"); } } }