练习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
思考:
加入制表符使数据输出更整齐;
public class Change{
public static void main(String args[]){
int i;
for(i=0;i<=300;i+=20){ //for循环,从0度开始到300度
System.out.print(i); //输出转换前的华氏温度
System.out.print("\t"); //输出tab键
System.out.printf("%d\n",5*(i-32)/9); //利用公式,输出转换后的摄氏温度
}
}
}
让摄氏温度保留一位小数。
public class Change{
public static void main(String args[]){
int i;
for(i=0;i<=300;i+=20){ //for循环,从0度开始到300度
System.out.print(i); //输出转换前的华氏温度
System.out.print("\t"); //输出tab键
System.out.printf("%.1f\n",(float)(5.0/9.0)*(i-32)); //利用公式,输出转换后的摄氏温度,用(float)强制转换,%.1f保留一位小数
}
}
}
修改温度转换程序,要求以逆序(从300度到0度的顺序)打印温度转换表。
public class Change{
public static void main(String args[]){
int i;
for(i=300;i>=0;i-=20){ //for循环,从300度开始到0度
System.out.print(i); //输出转换前的华氏温度
System.out.print("\t"); //输出tab键
System.out.printf("%d\n",5*(i-32)/9); //利用公式,输出转换后的摄氏温度
}
}
}
练习2:
打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153 是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
public class Number{public static void main(String args[]){
int n;
for(n=100;n<1000;n++){ //数字从100开始循环到999结束
int i=n/100; //定义int型i为百位数
int j=n%100/10; //定义int型j为十位数
int k=n%10; //定义int型k为个位数
if(n==i*i*i+j*j*j+k*k*k) //如果个十百各个的三次方相加等于该数,则输出
System.out.print(n+" "); //用空格将输出的各个数隔开
}
}
}
练习3:
求1+2!+3!+...+20!的和
public class Sum{public static void main(String args[]){
int i,j;
long s=0,n;
for(i=1;i<=20;i++){
n=1; //设置n的初始值
for(j=1;j<=i;j++){ //循环,开始1至20的阶乘
n*=j;
}
s+=n; //1至20阶乘相加
}
System.out.println(s);
}
}