第一章Java语言基础
指出Java语言的主要特点和ava程序的执行过程。
答:强类型。
    编译和解释。
    自动无用内存回收功能。
    面向对象。
    与平台无关。
    安全性。
    分布式计算。
    多线程。
2.说出开发与运行Java程序的主要步骤。
答:安装SUNJDK,配置classpath
编写源文件。
    编译。
    运行。
3.如何区分应用程序和小应用程序。
答:应用程序必须在一类中定义一个main()方法,该方法代表应用程序的入口。
    小应用程序不必定义main()方法,但是必须继承applet类。
4.说出Java源文件的命名规则。
答:和类命名规则一样,首字母大写。
5.选择一种上机环境,参照实例,编写一个输出“hello world字样的Java程序。
答:选择SUNIDE,用UltraEdit-32编写如下:
    //HelloWorld.java
    /**
    *<p>这是第一个程序</p>
    *@author 饶林
    *@see www.wddx
    */
    class  HelloWorld{
    public static void main(String[] args) {
        System.out.println("Hello World!");
        }
}
6.Java用什么字符集?共有多少个不同的字符?
答:Java语言使用Unicode字符集,共有65535个字符。
7.Java语言标识符的命名规则是什么?
答:由字母(包括英文字母、下划线、美元字符、文字字符)和数字字符组成。
    限定标识符的第一个字符不能是数字。
8.Java有哪些基本的数据类型,它们的常量又是如何书写的?
答:基本的数据类型也称为原始数据类型,是系统预先规定的一些常用类型。它们是:整数类型、浮点数(实数)类型、字符(文字)类型、逻辑类型(布尔型)。
9.指出下列内容那些事Java语言的整形常量,哪些是浮点数类型常量,那些两者都不是?
1E-4    2A423    3-1E-31    40xABCL    5.32E31    6)087    7)0x L
8)003    9)0x12.5    10)077    11)11E    12)056L    13)0.    14).0
答:整形常量:45681012
    浮点型:1391314
    两者都不是:2711
第二章运算和语句
1.Java字符能参加算术运算吗?
答:能,例如char类型a自加后变b
2.占字节多的变量能直接赋给占字节少的变量吗?
答:不能,需强制类型转换。
3.试用Java语言表达式描述以下数学计算式或逻辑条件:
1
    V=(4/3)*math.PI*math.pow(r,3);
2)R=1/(1/R1+1/R2)
    原式
3)y=x5+x3+6
    y=pow(x,5)+pow(x,3)+6;
4)F=M1M2/R2
    F=M1 *M/R*R
5)
    Math.sin(x) / ax + s(π*x/2)>0 ? s(π*x/2) : - s(π*x/2)
6) 0 < a <10
    a > 0 && a < 10
7) 条件 x=1 y=2 有且只有一个成立
    ( x == 1 && y != 2) || (x != 1 && y == 2)
4.设再求以下表达式之前,整形变量a的值是4,试指出在求表达式之后变量abc的值。
1b=a*a++;
    b = 16, a = 5;
2)c = ++a+a;
    c = 10, a = 5;
5.编写一个程序示意前缀++和后缀++的区别,前缀和后缀的区别。
答:领悟第四题完全就可以理解前缀++后缀++
    -- 亦如此。
6.若一个数恰好等于它的因子之和,则这个数称为完全数。编写程序求1000之内的所有完全数。
解析:什么是数的因子?因子就是所有可以整除这个数的数,但是不包括这个数自身.
//HelloWorld.java
/**
*<p>这是第二个程序</p>
*@author 饶林
*@see www.wddx
*/
public class  Praxis2_6{
    public static void main(String[] args) {
        int i,j,sum;
        for(i = 1; i <= 1000; i++){
            //sum0必须在此处
            sum=0;
            for(j=1; j<= i/2; j++){
                if((i%j)==0)
                    sum = sum+j;
            }
            if(i == sum)
                System.out.print(i + " ");
        }
    }
}
7.编写输入正实数x,求平方不超过x的最大正整数n,并输出。
解析:
/**
*<p>这是第三个程序</p>
*@author 饶林
*@see www.wddx
*/
import java.util.*;
public class Praxis2_7
{
    public static void main(String[]args)
    {
        Scanner consoleScanner = new Scanner( System.in );
        System.out.print("请输入正实数X:" );
        int x = Int();
        int y=(int)(Math.sqrt(x));
        System.out.println("n = "+y);
    }
}
8.输入正整数n输出nn列星号字符组成三角图案。
/**
*<p>这是第四个程序</p>
*@author 饶林
*@see www.wddx
*/
import java.util.*;
public class Praxis2_8{
    public static void main(String[] args){
        Scanner consoleScanner = new Scanner(System.in);
        System.out.print("请输入正整数x");
        int x = Int();
        for(int y=0; y< x; y++){
            for(int m=x-y-1; m>0; m--){
                System.out.print(" ");
            }
            for(int n=0; n< y+1; n++){
                System.out.print("*");
            }
            System.out.println();
        }
    }
}
9.设有整形变量xy的值分别为5110.指出执行了下列语句后,变量xy后的值分别是多少?
1while(x <= y) x*=2;
    X=160y=110
2) do {x = y/x;  y= y-x;}  while (y > = 1);
    X=18y=0
10.水仙花数是一个n( >= 3)位的数,它等于每个数字的n次幂之和。例如,153是一个水仙花数,153=13+53+33,是编写一个程序,求小于999的所有水仙花数。
/**
*<p>这是第五个程序</p>
*@author 饶林
*@see www.wddx
*/
public class Praxis2_10{
    public static void main(String[] args){
        int x,y,z;
        for(int m=100; m< 999; m++){
            x = m/100;
            y = (m%100)/10;
            z = (m%100)%10;
            if(m== x*x*x+ y*y*y + z*z*z)
                System.out.print(m + " ");
        }
    }
}
11.编程序解百鸡问题:鸡翁一,值钱五,鸡母一,值钱三,鸡邹三,值钱一,百钱买百鸡,求鸡翁,鸡母,鸡邹各几何?
/**
*<p>这是第六个程序</p>
*@author 饶林
*@see www.wddx
*/
public class Praxis2_11
{
    public static void main(String args[])
    {
        for(int i=0;i<=100;i++)
            for(int j=0;j<=100;j++)
                for(int k=0;k<=100;k+=3) //鸡雏的个数必须使3的倍数
                {
                    if(( (5*i+3*j+k/3)==100 )&& (i+j+k==100))
                    System.out.println("鸡翁:"+i+";  鸡母:"+j+"; 鸡雏:"+k);
                }
    }
}
12.编写程序,按下面的公式计算自然对数底e的值:
e = 1+1/1! + 1/2! + 1/3!......
/**
*<p>这是第七个程序</p>
*@author 饶林
*@see www.wddx
*/
public class Praxis2_12
{
    public static void main(String args[])
    {
        int n=1000; //计算精度
        double e=1.0;
        for(int i=1;i<=n;i++)
        {
            e=e+1.0/Praxis2_12.factorial(i);
        }
            System.out.println("e = "+e);
    }
    static double factorial(int a)  //计算阶乘的静态方法
    {
        double f=1.0;
        for(int j=1;j<=a;j++)
            f=f*j;
        return f;
    }
}
   
13.编写程序,用如下公式计算圆周率的近似值:
14.回文整数是正读反读相同的整数,编写一个程序,输入一个整数,判断是否为回文整数。
/**
*<p>这是第八个程序</p>
nextint()方法
*@author 饶林
*@see www.wddx
*/
import java.util.*;
public class Praxis2_14  //输入整数,判断是否是回文整数
{
    public static void main(String args[])
    {
        int a[]=new int[100];
        int i=0;
        boolean b=true;
        Scanner consoleScanner = new Scanner( System.in );

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。