第四章 Java章节习题.doc
文本预览下载声明
1.分别编写两个方法,一个方法的功能是求一个double型数值的向右取整,另一个方法求double型数值的向左取整。数d的向右取整是大于等于d的最小整数,d的向左取整是小于等于d的最大整数。例如:5.3的向右取整是6而向左取整是5.
答:
public class One{
static int right(double x)
{
if(x!=5)
x=x+1;
return (int)x;
}
static int left(double x)
{
return (int)x;
}
public static void main(String args[])
{
System.out.println(5.3向左取整为:+left(5.3));
System.out.println(5.3向右取整为:+right(5.3));
}
}
程序运行结果为:
2.写一个方法计算一个整数各位数字的和。使用下述的方法说明:
public static int sumDigits(long n)
例如:sumDigits(276)返回2+7+6=15 。
提示:用求余运算符%分解数字,用除号/分离位数。例如334%10=4而334/10=33.用循环反复分解和分离每位数字,直到所有的位数都被分解。
答:
public class Two{
public static int sumDigits(long n)
{
long sum=0,t;
while(n!=0)
{
t=n%10;
n=n/10;
sum+=t;
}
return (int)sum;
}
public static void main(String args[])
{
System.out.println(334各个位数字之和为:+sumDigits(334));
}
}
程序运行结果为:
3. 编写程序,用Math类中的sqrt方法打印下表:
Number SquareRoot .................................... 0 0.0000 2 1.4142 4 2.0000 6 2.4495 8 2.8284 10 3.1623 12 3.4641 14 3.7417 16 4.0000 18 4.2426 20 4.4721
答:
public class Three{
public static void main(String args[])
{
System.out.println(Number SquareRoot);
System.out.println(..................);
for(int i=0;i=20;)
{
System.out.printf(%d\t%.4f\n,i,Math.sqrt(i));
i=i+2;
}
}
}
程序运行结果为:
4. 请定义一个名为Rectangle的矩形类。数据域为宽(width)、高(height)和颜色(color),width和height是double型的,color时String型的。假定所有矩形的颜色相同。用一个类变量表示颜色。要求提供访问其方法和计算矩形面积的FindArea()方法。
答:
import java.util.Scanner;
class Rectangle
{
Rectangle(double w,double h)
{
width=w;
height=h;
}
public double FindArea()
{
return width*height;
}
double width,height;
static String color;
}
public class Four{
public static void main(String[] args) {
double width,height;
Scanner s=new Scanner(System.in);
System.out.print(请输入矩形的宽:);
width=s.ne
显示全部