java练习题(1)、(2)、(3)

来源:互联网 发布:淘宝 买家秀 大尺度 编辑:程序博客网 时间:2024/06/08 15:16

练习1:

使用公式C=(5/9)F-32)打印下列华氏温度与摄氏温度对照表。

0      -17

20     -6

40     4

60     15

80     26

100    37

120    48

140    60

160    71

180    82

200    93

220    104

240    115

260    126

280    137

300    148

(1)思考

加入制表符使数据输出更整齐;

让摄氏温度保留一位小数。

1.代码

public class Test1{

     public static void main(String args[]){

 int i; 

         for(i=0;i<301;i+=20){

              System.out.print(i);

              System.out.print("\t");

         

              System.out.printf("%.1f\n",(5.0/9)*(i-32));

 

}

}

}

 

2.截图

 

3.分析


(1)根据公式中F的取值范围,定义变量i,确定i的取值范围为0~300。

(2)通过for语句,分别输出i为0~300时,摄氏温度的取值。

(3)注意:5/9要写为5.0/9,保证结果为小数。

(2)修改温度转换程序,要求以逆序(从300度到0度的顺序)打印温度转换表。

1.代码

public class Test1{

     public static void main(String args[]){

       int i; 

          for(i=300;i>=0;i-=20){

                 System.out.print(i);

        System.out.print("\t");

                 System.out.printf("%.1f\n",(5.0/9)*(i-32));

 

}

}

}

  

2.截图


练习2:

打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153 是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。

1.代码

public class Test3{

   public static void main(String args[]){

    

     int i,j,k,m;

     for(m=100;m<1000;m++){

 

       i=m/100;

       j=m/10%10;

      k=m%10;

         if(i*100+j*10+k==i*i*i+j*j*j+k*k*k){

               System.out.println(m);

 

            }

 

       }

    }

}

2.截图


3.分析

(1)定义变量m,根据水仙花数是三位数确定m的取值范围为100~999.

(2)通过运算,找出m个位、十位和百位上的数字i、j、k。

(3)通过if语句判断m是否等于i*i*i+j*j*j+k*k*k,如果相等,则输出水仙花数。

练习3:

1+2!+3!+...+20!的和

1.代码

public class Test4{

 public static void main(String args[]){

   int i;

    long m=1,s=0;

 for(i=1;i<21;i++){

    m*=i;

   s+=m;

    }

   System.out.print(s);

 

 }

 

}

2.截图



(3)分析

11+2!+3!+...+20!相当于1+2*1+3*2*1+....+20*19*...*1

2)定义变量m表示式子的项,初始值为1。定义变量s表示式子的结果,初值为0

3)通过for循环语句,根据m*=i;可取的当i1~20时各项的值。再根据s+=m;,使得各项的值相加。

4)最后输出式子的结果。

原创粉丝点击