1. 打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。(知识点:循环语句、条件语句)
package diyici; import java.util.*; import org.omg.Messaging.SyncScopeHelper; public abstract class diyici{ public ArrayListgetSXHS() { // TODO Auto-generated method stub ArrayList sxhs = new ArrayList (); for(int i = 100; i <= 999; i++){ int i1 = i / 100; int temp = i % 100; int i2 = temp / 10; int i3 = temp % 10; int iresult = (int) (Math.pow(i1, 3) + Math.pow(i2, 3) + Math.pow(i3, 3)); if(i == iresult) { sxhs.add(new Integer(i)); } } return sxhs; } }
2.在控制台输出以下图形(知识点:循环语句、条件语句)
package diyici; import java.util.*; import org.omg.Messaging.SyncScopeHelper; public abstract class diyici{ public static void main(String[] args) { for(int i=0; i<=7; i++){ for(int j=1; j){ System.out.print(j); } System.out.println(""); } }}
package diyici; import java.util.*; import org.omg.Messaging.SyncScopeHelper; public abstract class diyici{ public static void main(String[] args) { int i=1; int j=1; for(i=6;i>0;i--){ for(j=1;j<=i;j++){ System.out.print(j); } System.out.println(); } } }
package diyici; import java.util.*; import org.omg.Messaging.SyncScopeHelper; public abstract class diyici{ public static void main(String[] args) { for(int i=1;i<7;i++) { for (int k = 1; k <7-i ; k++) { System.out.print(" "); } for(int j=i;j>0;j--) { System.out.print(j); } System.out.println(); } }}
package diyici; import java.util.*; import org.omg.Messaging.SyncScopeHelper; public abstract class diyici{ public static void main(String[] args) { for(int i=6;i>0;i--) { for(int k=0;k<6-i;k++) { System.out.print(" "); } for(int j=1;j<=i;j++) { System.out.print(j); } System.out.println(""); } }}
3. 输入年月日,判断这是这一年中的第几天(知识点:循环语句、条件语句)
package diyici; import java.util.*; import org.omg.Messaging.SyncScopeHelper; public abstract class diyici{ public static void main(String[] args) { // TODO Auto-generated method stub System.out.print("请输入年,月,日\n"); Scanner input = new Scanner(System.in); int year = input.nextInt(); int month = input.nextInt(); int date= input.nextInt(); int sum =0 ; int leap; //计算某一月份之前的天数 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 = 303;break; case 12: sum = 334;break; default: System.err.println("date error");break; } sum = sum + date; if(year%400==0||year%4==0&&year%100!=0) { leap = 1; }else { leap =0; } if(leap==1&&month>2) { sum++; } System.out.println(sum); //加上当月的date } }
4.由控制台输入一个4位整数,求将该数反转以后的数,如原数为1234,反转后的数位4321(知识点:循环语句、条件语句)
package diyici; import java.util.*; import org.omg.Messaging.SyncScopeHelper; public abstract class diyici{ public static void main(String[] args) { Scanner sc = new Scanner(System.in); int shuru = sc.nextInt(); String hebing =""; String fanzhuan = String.valueOf(shuru); for(int i=fanzhuan.length()-1; i>=0; i--) { //System.out.print(fanzhuan.charAt(i)); hebing = hebing + fanzhuan.charAt(i);//将数字拆开,重新组合形成一个字符串 } int newShu = Integer.parseInt(hebing);//将新数转回int类型 System.out.print(newShu); } }