JavaSE第三次作业
1.分别使用for循环,while循环,do循环求1到100之间所有能被3整除的整数的和。(知识点:循环语句)
package workdemo01;
public class job01 {
public static void main(String[] args) {
// TODO Auto-generated method stub
// 1.分别使用for循环,while循环,do循环
// 求1到100之间所有能被3整除的整数的和。(知识点:循环语句)
int sum=0;
int j;
int i;
// 使用for循环
for(i=1;i<=100;i++) {
if(i%3==0) {
j=i;
sum=sum+j;
}
}
System.out.println(sum);
// while循环
while(i<=100) {
if(i%3==0) {
j=i;
sum=sum+j;
}
}
System.out.println(sum);
// do循环
do {
if(i%3==0) {
j=i;
sum=sum+j;
}
}while(i<=100);
System.out.println(sum);
}
}
2.输出0-9之间的数,但是不包括5。(知识点:条件、循环语句)
package workdemo01;
public class job02 {
public static void main(String[] args) {
// TODO Auto-generated method stub
// 2.输出0-9之间的数,但是不包括5。(知识点:条件、循环语句)
int i;
for(i=0;i<=9;i++) {
if(i==5) {
continue;
}
System.out.println(i);
}
}
}
3.编写一个程序,求整数n的阶乘,例如5的阶乘是1*2*3*4*5(知识点:循环语句)
package workdemo01;
import java.util.Scanner;
public class job03 {
public static void main(String[] args) {
// TODO Auto-generated method stub
// 3.编写一个程序,求整数n的阶乘,例如5的阶乘是1*2*3*4*5(知识点:循环语句)
Scanner jc=new Scanner(System.in);
System.out.println("请输入一个数的整数");
int x=jc.nextInt();
int sum=1;
int i=1;
while(i<=x) {
sum=sum*i;
i++;
}
System.out.println("整数"+x+"的阶乘为"+sum);
}
}
4.编写一个程序,输入任意学生成绩,如果输入不合法(<0或者>100),提示输入错误,重新输入,直到输入合法程序结束(知识点:循环语句)
package workdemo01;
import java.util.Scanner;
public class job04 {
public static void main(String[] args) {
// TODO Auto-generated method stub
// 4.编写一个程序,输入任意学生成绩,如果输入不合法(<0或者>100),
// 提示输入错误,重新输入,直到输入合法程序结束(知识点:循环语句)
Scanner input=new Scanner(System.in);
System.out.println("输入学生成绩");
double cj=input.nextDouble();
while(cj<0||cj>100) {
System.out.println("输入错误,重新输入");
cj=input.nextDouble();
}
if(cj>=0&&cj<=100) {
System.out.println("输入合法程序结束");
}
}
}
5.假设某员工今年的年薪是30000元,年薪的年增长率6%。编写一个Java应用程序计算该员工10年后的年薪,并统计未来10年(从今年算起)总收入。(知识点:循环语句)
package workdemo01;
public class job05 {
public static void main(String[] args) {
// TODO Auto-generated method stub
// 5.假设某员工今年的年薪是30000元,年薪的年增长率6%。
// 编写一个Java应用程序计算该员工10年后的年薪,
// 并统计未来10年(从今年算起)总收入。(知识点:循环语句)
double sal=30000;
int year=1;
double sum=30000;
for(;year<10;year++) {
sal+=sal*0.06;
sum+=sal;
}
System.out.println("该员工10年后的年薪为:"+sal);
System.out.println("该员工未来10年的年薪为:"+sum);
}
}
作业
- 打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。(知识点:循环语句、条件语句)
package workdemo01;
import java.util.Scanner;
public class work01 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input=new Scanner(System.in);
System.out.println("请输入一个整数");
int x=input.nextInt();
int ge=x/10/10%10;
int shi=x/10%10;
int bai=x%10;
int sjh=ge*ge*ge+shi*shi*shi+bai*bai*bai;
System.out.println(sjh);
System.out.println(ge);
System.out.println(shi);
System.out.println(bai);
}
}
- 输入年月日,判断这是这一年中的第几天(知识点:循环语句、条件语句)
package workdemo01;
import java.util.Scanner;
public class work02 {
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 moonth=input.nextInt();
System.out.println("请输入几号");
int day=input.nextInt();
int sum=0;
if(year%4==0&&year%100!=0||year%400==0){
System.out.println("该年份是闰年");
switch(moonth){
case 1:
sum=day;
break;
case 2:
sum=31+day;
break;
case 3:
sum=31+29+day;
break;
case 4:
sum=31+29+31+day;
break;
case 5:
sum=31+29+31+30+day;
break;
case 6:
sum=31+29+31+30+31+day;
break;
case 7:
sum=31+29+31+30+31+30+day;
break;
case 8:
sum=31+29+31+30+31+30+31+day;
break;
case 9:
sum=31+29+31+30+31+30+31+31+day;
break;
case 10:
sum=31+29+31+30+31+30+31+31+30+day;
break;
case 11:
sum=31+29+31+30+31+30+31+31+30+31+day;
break;
case 12:
sum=31+29+31+30+31+30+31+31+30+31+30+day;
break;
}
}else{
System.out.println("该年份是平年");
switch(moonth){
case 1:
sum=day;
break;
case 2:
sum=31+day;
break;
case 3:
sum=31+28+day;
break;
case 4:
sum=31+29+31+day;
break;
case 5:
sum=31+29+31+30+day;
break;
case 6:
sum=31+29+31+30+31+day;
break;
case 7:
sum=31+29+31+30+31+30+day;
break;
case 8:
sum=31+29+31+30+31+30+31+day;
break;
case 9:
sum=31+29+31+30+31+30+31+31+day;
break;
case 10:
sum=31+29+31+30+31+30+31+31+30+day;
break;
case 11:
sum=31+29+31+30+31+30+31+31+30+31+day;
break;
case 12:
sum=31+29+31+30+31+30+31+31+30+31+30+day;
break;
}
}
System.out.println("这是一年中的第"+sum+"天");
}
}
- 由控制台输入一个4位整数,求将该数反转以后的数,如原数为1234,反转后的数位4321(知识点:循环语句、条件语句)
package workdemo01;
import java.util.Scanner;
public class work03 {
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 b;
int ge=a%10;
int shi=a/10%10;
int bai=a/100%10;
int qian=a/1000%10;
b=ge*1000+shi*100+bai*10+qian;
System.out.println(b);
}
}