文档详情

第四章 Java章节习题.doc

发布:2015-09-10约8.22千字共14页下载文档
文本预览下载声明
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
显示全部
相似文档