第一章 习题及思考题
1、 Java程序是由什么组成的?一个程序中必须有public类吗?Java源文件的命名规则是怎样的?
2、怎样区分应用程序和小应用程序?应用程序的主类和小应用程序的主类必须用public修饰吗?
3、开发与运行Java程序需要经过哪些主要步骤和过程?
4、安装JDK之后如何设置JDK系统的PATH,CLASSPATH?他们的作用是什么? 5、Java语言特点是什么?
6、简述面向过程问题求解和面向对象问题求解的异同。试列举出面向对象和面向过程的编程语言各两种。
第二章 习题及思考题
1. 试分析基本数据类型和引用数据类型的基本特点? 2. 请使用异或运算符^, 实现两个整数的交换。 3. 下列哪个是合法的标识符:( )。
A、a=b B、_Hello C、2nd D、Chong qing 4. 下列哪些是合法的标识符()。
A、new B、class C、int D、const2
5. 如果定义有变量double d1, d2=4.0则下列说法正确的是:
A、变量d1,d2均初始化为4.0
B、变量d1没有初始化,d2初始化为4.0 C、变量d1,d2均未初始化
D、变量d2没有初始化,d1初始化为4.0
6. 判断题:所有的变量在使用前都必须进行初始化。( )
7. 内部数据类型byte的取值范围是:( )
A、0~65, 535 B、(-128)~127
C、(-32,768)~32,767 D、(-256)~255
8. 下列哪些是不能通过编译的语句:( )
A、int i = 32; B、float f = 45.0; C、double d = 45.0; D、char a=‘c’;
9. 判断题:Java中数据类型的长度与具体使用的机器相关。( )
10. 如果定义有double x;float y;int m,则表达式x*y-m的类型为( ):
A、double B、float C、int D、short
11. 如果定义有short s;byte b;char c,则表达式s*b+c的类型为( ):
A、char B、short C、int D、byte
12. 已知int i= 2147483647; ++i; 则i的值等于多少( ) A -2147483648 B 2147483647 C 2147483648 13. 已知byte i= 127; ++i; 则i的值等于多少( ) A -128 B 127 C 128
14. 已知byte i= 127; i=i+1;这两行语句能否编译成功?( ) 15. 执行以下程序段int a=5,b; b=++a*3后b的值为:( )
A、17 B、18 C、16 D、15 16. 如果x=3,y=5,则表达式x|y的值为:( )
A、15 B、8 C、1 D、7 17. 如果int a=3,b=2,则执行a*=b+8后a的值为:( )
A、20 B、14 C、30 D、16 18. 若所用变量都已正确定义,以下选项中,非法的表达式是:( )
A、a!=4||b==1 B、'a'%3 C、'a'=1/2 D、'A'+32
19. 设有定义语句int a[]={1,1,2}; 则以下对此语句的叙述错误的是( )。
A、定义了一个名为a的一维数组 B、a数组有3个元素
C、a数组的下标为1~3 D、数组中的每个元素是整型 20. 以下数组初始化形式正确的是:( )
A、int t1[][]={{1,2},{3,4},{5,6}} B、int t2[][]={1,2,3,4,5,6} C、int t3[3][2]={1,2,3,4,5,6} D、int t4[][];t4={1,2,3,4,5,6}
第三章 习题及思考题
1、编写一个程序,用选择法对数组a[]={20,10,55,40,30,70,60,80,90,100}进行从大到小
的排序
2、求两个整数的最大公约数 3、请打印出如下九九乘法表
* | 1 2 3 4 5 6 7 8 9 -------|------------------------------------ 1 | 1 2 | 2 4 3 | 3 6 9
4 | 4 8 12 16 5 | 5 10 15 20 25 6 | 6 12 18 24 30 36 7 | 7 14 21 28 35 42 49 8 | 8 16 24 32 40 48 56 64 9 | 9 18 27 36 45 54 63 72 81
4、求一元二次方程ax2+bx+c=0的根,要求a、b、c从控制台输入。
5、求前40个Fibonacci数列。
Fibonacci数列:1,1,2,3,5,8,13,21,34,? 从数列看到:F1=1 (n=1) F2=1 (n=2) Fn=Fn-1+Fn-2 (n≥3)
6、已知公鸡5元1只,母鸡3元一只,小鸡1元3只,要求用100元刚好买100只鸡,问有多少种
采购方案。
7、判断一个字符串是否是回文,例如“rotor“反转之后还是”rotor“,所以是回文。需
查阅String类的一些方法。 8、求2-1000内的所有素数
9、在一个循环中使用break,continue和return有什么不同?
10、结构化程序设计有哪三种流程?他们分别对应Java中那些语句
第四章 习题及思考题
1.什么是类?什么是对象?对象和类是什么关系?
2、 什么是方法?方法的结构是怎样的?设计方法应考虑哪些因素?
3.创建一个有两个方法的类,其中第一个方法两次调用第二个方法,第一次不使
用this,第二个使用this。
4、创建一个类,该类还有int和char类型的成员变量且未被初始化,然后编程输
出这些成员变量的值,查看java是否执行了默认的初始化操作。
5、创建一个类,该类含有的成员变量和成员方法,创建一个该类的对象,察看
当时图访问这些成员时,编译程序会给出那些信息(注意:在同一目录下的类都属于一个默认的包)。
6、下面给出了一个矩形类Rectangle,其中含有多个构造方法。上机编译并运行
此程序,观察运行结果,体会其中不同构造方法的设计和使用。 import java.io.*;
class Rectangle //矩形类 {
private int width; //矩形的宽度 private int length; //矩形的长度
Rectangle() //矩形的不带参数的构造函数,缺省的给出长(30)和宽(20) {
length=30;width=20; }
Rectangle(int l,int w) //矩形的带参数的构造函数 {
length=l;width=w; }
Rectangle(Rectangle r) //此构造方法以另一个Rectangle作为参数 {
width=r.width(); //通过对象调用函数并附值给相应变量 length=r.length(); }
int width() //返回宽度 {
return width; }
int length() //返回长度
{
return length; } }
public class CRctngle {
public static void main (String args[ ]) {
Rectangle x1=new Rectangle(); //声明类的对象并实例化 Rectangle x2=new Rectangle(50,40); //声明类的对象并初始化 Rectangle x3=new Rectangle(x1); System.out.println(x1.length()); System.out.println(x1.width()); System.out.println(x2.length()); System.out.println(x2.width()); System.out.println(x3.length()); System.out.println(x3.width()); } }
运行结果:30 20 50 40 30 20
7、下面给出了一个计算阶乘的类Fact和使用该类计算阶乘的程序Check1。编译并运行该程序,观察运行结果,体会方法的参数的传递和返回值的用法。在调用时改变参数的个数和类型,看看编译时会得到什么信息。 class Fact {
float fact (int n) //定义计算n!的方法 { int i;
float x =1;
for(i=1;i public class Check1 { public static void main (String args[ ]) { Fact x =new Fact( ); System.out.println(x.fact(10)); //计算10! System.out.println(x.fact(15)); //计算15! } } 运行结果: 1.0E9 2.91929271E16 8、编译并运行下面的程序,观察分析运行结果,体会程序中super和this的用法,进一步理解变量隐藏和方法重写的概念。 import java.io.*; class SuperClss //定义父类 { int x; SuperClss( ) //父类的构造方法 { x=10; } void doClss( ) { System.out.println(\ } } class SubClss extends SuperClss //定义子类 { int x; 百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库第一章习题及思考题在线全文阅读。
相关推荐: