第五周Java作业
上机练习
1.分别使用for循环,while循环,do循环求1到100之间所有能被3整除的整数的和。(知识点:循环语句)
package ktlx; public class Lx1 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int a = 1; int sum = 0; while (a <= 100) { if (a % 3 == 0) { sum = sum + a; } a++; } System.out.println(sum); int b=1; int sum2=0; do{ if(b%3==0){ sum2=sum2+b; } b++; }while(b<=100); System.out.println(sum2); int sum3=0; for(int c=1;c<=100;c++){ if(c%3==0){ sum3+=c; } } System.out.println(sum3); } }

2.输出0-9之间的数,但是不包括5。(知识点:条件、循环语句)
package ktlx; public class Lx2 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int a=0; while(a<=9){ if(a!=5){ System.out.println(a); } a++; } } }

3.编写一个程序,求整数n的阶乘,例如5的阶乘是1*2*3*4*5(知识点:循环语句)
package ktlx; import java.util.Scanner; public class Lx3 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner input=new Scanner(System.in); System.out.println("输入一个数"); int a=input.nextInt(); int q=1; for(int s=1;s<=a;s++){ q*=s; } System.out.println(q); } }

4.编写一个程序,输入任意学生成绩,如果输入不合法(<0或者>100),提示输入错误,重新输入,直到输入合法程序结束(知识点:循环语句)
package ktlx; import java.util.Scanner; public class Lx4 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub while(true){ Scanner input=new Scanner(System.in); System.out.println("输入一个成绩"); int a=input.nextInt(); if(a>0&&a<=100){ System.out.println("成绩有效"); break; } else{ System.out.println("成绩无效,重新输入"); } } } }

5.假设某员工今年的年薪是30000元,年薪的年增长率6%。编写一个Java应用程序计算该员工10年后的年薪,并统计未来10年(从今年算起)总收入。(知识点:循环语句)
package ktlx; public class lx5 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub double a=30000; double b=0.06; int s=1; double sum=0; while(s<=9){ sum+=a; a=a*(b+1); s++; } System.out.println("第十年年薪为"+a); System.out.println("总和为"+sum); } }

作业
1.打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。(知识点:循环语句、条件语句)
package homework5; public class Zy1 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int a=100; while (a<1000){ if((a/100)*(a/100)*(a/100)+(a%100/10)*(a%100/10)*(a%100/10)+(a%10)*(a%10)*(a%10)==a){ System.out.println(a); } a++; } } }

2.输入年月日,判断这是这一年中的第几天(知识点:循环语句、条件语句)
package homework5; import java.util.Scanner; public class Zy2 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner input = new Scanner(System.in); System.out.println("输入一个年份:" + "输入一个月份:" + "输入一个日期:"); int a = input.nextInt(), b = input.nextInt(), c = input.nextInt(), s = c; if (a % 4 == 0 && a % 100 != 0 || a % 400 == 0) { switch (b) { case 1: s = c; break; case 2: s = 31 + c; break; case 3: s = 31 + 29 + c; break; case 4: s = 31 + 29 + 31 + c; break; case 5: s = 31 + 29 + 31 + 30 + c; break; case 6: s = 31 + 29 + 31 + 30 + 31 + c; break; case 7: s = 31 + 29 + 31 + 30 + 31 + 30 + c; break; case 8: s = 31 + 29 + 31 + 30 + 31 + 30 + 31 + c; break; case 9: s = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + c; break; case 10: s = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + c; break; case 11: s = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + c; break; case 12: s = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30 + c; break; } } else { switch (b) { case 1: s = c; break; case 2: s = 31 + c; break; case 3: s = 31 + 28 + c; break; case 4: s = 31 + 28 + 31 + c; break; case 5: s = 31 + 28 + 31 + 30 + c; break; case 6: s = 31 + 28 + 31 + 30 + 31 + c; break; case 7: s = 31 + 28 + 31 + 30 + 31 + 30 + c; break; case 8: s = 31 + 28 + 31 + 30 + 31 + 30 + 31 + c; break; case 9: s = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + c; break; case 10: s = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + c; break; case 11: s = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + c; break; case 12: s = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30 + c; break; } } System.out.println("这是这一年中的第"+s+"天"); } }

3.由控制台输入一个4位整数,求将该数反转以后的数,如原数为1234,反转后的数位4321(知识点:循环语句、条件语句)
package homework5; import java.util.Scanner; public class Zy3 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner input = new Scanner(System.in); System.out.println("输入一个四位整数:"); int a = input.nextInt(); while (a < 1000 || a > 9999) { System.out.println("输入错误"); a = input.nextInt(); } int g = a % 10; int s = a % 100 / 10; int b = a % 1000 / 100; int q = a / 1000; System.out.println("反转后的数为" + g + s + b + q); } }


浙公网安备 33010602011771号