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

package task; public class T1 { public static void main(String[] args) { // TODO Auto-generated method stub int sum=0; int i=1; while(i<=100) { if(i%3==0) { sum+=i; } i++; } System.out.println(sum); } }

package task; public class T1 { public static void main(String[] args) { // TODO Auto-generated method stub int sum=0; int i=1; do { if(i%3==0) sum+=i; i++; } while(i<=100); { } System.out.println(sum); } }

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

3.编写一个程序,求整数n的阶乘,例如5的阶乘是1*2*3*4*5(知识点:循环语句)
package task; import java.util.Scanner; public class T2 { public static void main(String[] args) { Scanner input=new Scanner(System.in); System.out.println("输入一个数"); int i=input.nextInt(); int a=1; int sum=1; while(a<=i) { sum*=a; a++; } System.out.println(sum); } }

4.编写一个程序,输入任意学生成绩,如果输入不合法(<0或者>100),提示输入错误,重新输入,直到输入合法程序结束(知识点:循环语句)
package task; import java.util.Scanner; public class T2 { public static void main(String[] args) { Scanner input=new Scanner(System.in); System.out.println("输入一个数"); int i=input.nextInt(); while(i<0||i>100) { i=input.nextInt(); } System.out.println(i); } }

5.假设某员工今年的年薪是30000元,年薪的年增长率6%。编写一个Java应用程序计算该员工10年后的年薪,并统计未来10年(从今年算起)总收入。(知识点:循环语句)
package task; import java.util.Scanner; public class T2 { public static void main(String[] args) { double i=30000; int n=1; double sum=0; while(n<=10) { i=i+i*0.06; sum+=i; n++; } System.out.println(i); System.out.println(sum); } }

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

2.输入年月日,判断这是这一年中的第几天(知识点:循环语句、条件语句)
package task; import java.util.Scanner; public class T2 { public static void main(String[] args) { Scanner input1=new Scanner(System.in); Scanner input2=new Scanner(System.in); Scanner input3=new Scanner(System.in); System.out.println("输入年"); int n=input1.nextInt(); System.out.println("输入月"); int y=input2.nextInt(); System.out.println("输入日"); int d=input3.nextInt(); int a=0; int sum=0; while(a<y) { sum+=d; switch(y) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: d=31; break; case 4: case 6: case 9: case 11: d=30; break; case 2: if((n%4==0||n%100!=0)&&n%400==0) { d=29; } else { d=28; } break; } a++; } System.out.println("这是"+n+"年第"+sum+"天"); } }

3.由控制台输入一个4位整数,求将该数反转以后的数,如原数为1234,反转后的数位4321(知识点:循环语句、条件语句)
package task; import java.util.Scanner; public class T2 { public static void main(String[] args) { Scanner input1=new Scanner(System.in); System.out.println("输入一个四位数"); int n=input1.nextInt(); int a,b,c,d; int sum; a=n/1000; b=n/100%10; c=n/10%10; d=n%10; sum=d*1000+c*100+b*10+a; System.out.println(sum); } }


浙公网安备 33010602011771号