新《Java语言程序设计》上机实验指导手册Word文件下载.docx
《新《Java语言程序设计》上机实验指导手册Word文件下载.docx》由会员分享,可在线阅读,更多相关《新《Java语言程序设计》上机实验指导手册Word文件下载.docx(53页珍藏版)》请在冰豆网上搜索。
✧程序模板:
Hello.java
publicclassHello
{
publicstaticvoidmain(Stringargs[])
{
【代码1】//命令行窗口输出"
你好,很高兴学习Java"
Aa=newA();
a.fA();
}
}
classA
{
voidfA()
{
【代码2】//命令行窗口输出"
Wearestudents"
✧实验后的练习:
1.编译器怎样提示丢失大括号的错误?
2.编译器怎样提示语句丢失分号的错误?
3.编译器怎样提示将System写成system这一错误?
编译器怎样提示将String写成string这一错误?
2.联合编译
编写4个源文件:
Hello.java、A.java、B.java和C.java,每个源文件只有一个类,Hello.java是一个应用程序(含有main方法),使用了A、B和C类。
将4个源文件保存到同一目录中,例如:
C:
\100,然后编译Hello.java。
模板1:
Hello.java
publicclassMainClass
你好,只需编译我"
Bb=newB();
b.fB();
模板2:
A.java
publicclassA
IamA"
模板3:
B.java
publicclassB
voidfB()
【代码3】//命令行窗口输出"
IamB"
模板4:
C.java
publicclassC
voidfC()
【代码4】//命令行窗口输出"
IamC"
4.将Hello.java编译通过后,不断修改A.java源文件中的代码,比如,在命令行窗口输出“我是A类”或“我被修改了”。
要求每次修改A.java源文件后,单独编译A.java,然后直接运行应用程序Hello。
5.如果需要编译某个目录下的全部Java源文件,比如C:
\1000目录,可以使用如下命令:
c:
\1000\javac*.java
3.输出希腊字母表。
编写一个Java应用程序,该程序在命令行窗口输出希腊字母表。
GreekAlphabet.java
publicclassGreekAlphabet
intstartPosition=0,endPosition=0;
charcStart='
α'
cEnd='
ω'
;
【代码1】//cStart做int型转换据运算,并将结果赋值给startPosition
【代码2】//cEnd做int型转换运算,并将结果赋值给endPosition
System.out.println("
希腊字母\'
α\'
在unicode表中的顺序位置:
"
+(int)cStart);
希腊字母表:
);
for(inti=startPosition;
i<
=endPosition;
i++)
charc='
\0'
【代码3】//i做char型转换运算,并将结果赋值给c
System.out.print("
"
+c);
if((i-startPosition+1)%10==0)
}
1.将一个double型数据直接赋值给float型变量,程序编译时提示怎样的错误?
2.在应用程序的main方法中增加语句:
floatx=0.618;
程序能编译通过么?
3.在应用程序的main方法中增加语句:
bytey=128;
4.在应用程序的main方法中增加语句:
intz=(byte)128;
程序输出变量z的值是多少?
4.回文数。
编写一个Java应用程序。
用户从键盘输入一个1—99999之间的数,程序将判断这个数是几位数,并判断这个数是否是回文数。
回文数是指将该数含有的数字逆序排列后得到的数和原数相同,例如12121、3223都是回文数。
Number.java
importjavax.swing.JOptionPane;
publicclassNumber
publicstaticvoidmain(Stringargs[])
intnumber=0,d5,d4,d3,d2,d1;
Stringstr=JOptionPane.showInputDialog("
输入一个1至99999之间的数"
number=Integer.parseInt(str);
if(【代码1】)//判断number在1至99999之间的条件
【代码2】//计算number的最高位(万位)d5
【代码3】//计算number的千位d4
【代码4】//计算number的百位d3
d2=number%100/10;
d1=number%10;
if(【代码5】)//判断number是5位数的条件
System.out.println(number+"
是5位数"
if(【代码6】)//判断number是回文数的条件
是回文数"
else
不是回文数"
elseif(【代码7】)//判断number是4位数的条件
是4位数"
if(【代码8】)//判断number是回文数的条件码
elseif(【代码9】)//判断number是3位数的条件
是3位数"
if(【代码10】)//判断number是回文数的条件
elseif(d2!
=0)
是2位数"
if(d1==d2)
elseif(d1!
是1位数"
System.out.printf("
\n%d不在1至99999之间"
number);
1.程序运行时,用户从键盘输入2332,程序提示怎样的信息?
2.程序运行时,用户从键盘输入654321,程序提示怎样的信息?
3.程序运行时,用户从键盘输入33321,程序提示怎样的信息?
5.猜数字游戏。
编写一个Java应用程序,实现下列功能:
1)程序随机分配给客户一个1—100之间的整数
2)用户在输入对话框中输入自己的猜测
3)程序返回提示信息,提示信息分别是:
“猜大了”、“猜小了”和“猜对了”。
4)用户可根据提示信息再次输入猜测,直到提示信息是“猜对了”。
GuessNumber.java
publicclassGuessNumber
给你一个1至100之间的整数,请猜测这个数"
intrealNumber=(int)(Math.random()*100)+1;
intyourGuess=0;
输入您的猜测:
yourGuess=Integer.parseInt(str);
while(【代码1】)//循环条件
if(【代码2】)//条件代码
str=JOptionPane.showInputDialog("
猜大了,再输入你的猜测:
elseif(【代码3】)//条件代码
猜小了,再输入你的猜测:
猜对了!
1.用“yourGuess>
realNumber”替换【代码1】,可以么?
2.语句:
“System.out.println(“猜对了!
”);
”为何要放在while循环语句之后?
放在while语句的循环体中合理吗?
【结果】
将本次上机实验结果按照实验要求内容依次进