java第五次上机练习+作业
上机练习
1.分别使用for循环,while循环,do循环求1到100之间所有能被3整除的整数的和。(知识点:循环语句)
package 作业0405; public class 上机练习 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub //分别使用for循环,while循环,do循环求1到100之间所有能被3整除的整数的和 //while语句 int sum1=0; int i1=1; while (i1 < 100) { if (i1 % 3==0 ) { sum1+=i1; } i1++; } System.out.println("sum1="+sum1); //do-while语句 int sum2=0; int i2=1; do { if (i2 % 3==0) { sum2+=i2; } i2++; } while (i2 < 100); System.out.println("sum2="+sum2); //for语句 int sum3=0; for (int i3 = 1; i3 < 100; i3++) { if (i3 % 3==0) { sum3+=i3; } } System.out.println("sum3="+sum3); } }
2.输出0-9之间的数,但是不包括5。(知识点:条件、循环语句)
package jf; public class jf1 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int i=0; while (i<=9) { if (i!=5) { System.out.println(i); } i++; } } }
3.编写一个程序,求整数n的阶乘,例如5的阶乘是1*2*3*4*5(知识点:循环语句)
package jf; import java.util.Scanner; public class jf3 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner input=new Scanner(System.in); System.out.println("输入一个整数"); int n=input.nextInt(); int sum=1; while (n>=1) { sum*=n; n--; } System.out.println("阶乘是"+sum); } }
4.编写一个程序,输入任意学生成绩,如果输入不合法(<0或者>100),提示输入错误,重新输入,直到输入合法程序结束(知识点:循环语句)
package jf; import java.util.Scanner; public class jf4 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner input=new Scanner(System.in); System.out.println("输入成绩"); int i=input.nextInt(); while (i<0||i>100) { System.out.println("输入错误,重新输入"); i=input.nextInt(); } System.out.println("ok"); } }
5.假设某员工今年的年薪是30000元,年薪的年增长率6%。编写一个Java应用程序计算该员工10年后的年薪,并统计未来10年(从今年算起)总收入。(知识点:循环语句)
package 作业0405; public class 上机练习3 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub double nx=30000,sum=0; int i=1; while (i <= 10) { nx=nx+nx*0.06; sum+=nx; i++; } System.out.println("十年后的年薪"+nx); System.out.println("十年总年薪"+sum); } }
作业
1.打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。(知识点:循环语句、条件语句)
package 作业0405; public class 作业1 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int g,s,b; for (int i = 100; i <= 999; i++) { g=i%100%10;s=i/10%10;b=i/100; if (i==g*g*g+s*s*s+b*b*b) { System.out.println(i); } } } }
2.输入年月日,判断这是这一年中的第几天(知识点:循环语句、条件语句)
package 作业0405; import java.util.Scanner; public class 作业2 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub //输入年月日,判断这是这一年中的第几天 Scanner input=new Scanner(System.in); System.out.println("请输入年"); int year = input.nextInt(); System.out.println("请输入月"); int month = input.nextInt(); System.out.println("请输入日"); int day= input.nextInt(); int sum = 0; switch (month-1) { case 12:sum +=31; case 11:sum +=30; case 10:sum +=31; case 9:sum +=30; case 8:sum +=31; case 7:sum +=31; case 6:sum +=30; case 5:sum +=31; case 4:sum +=30; case 3:sum +=31; case 2: if (year%4==0&&year%100!=0||year%400==0) { sum += 29; }else{ sum += 28; } case 1:sum +=31; default: break; } sum +=day; System.out.println("这是这一年中的第" + sum + "天!"); } }
3.由控制台输入一个4位整数,求将该数反转以后的数,如原数为1234,反转后的数位4321(知识点:循环语句、条件语句)
package 作业0405; import java.util.Scanner; public class 作业3 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner input = new Scanner(System.in); System.out.println("请输入一个四位数的整数:"); int num = input.nextInt(); while(num>0){ System.out.print(num%10); num=num/10; } } }