习题答案 46Word文档格式.docx
- 文档编号:16980023
- 上传时间:2022-11-27
- 格式:DOCX
- 页数:16
- 大小:42.71KB
习题答案 46Word文档格式.docx
《习题答案 46Word文档格式.docx》由会员分享,可在线阅读,更多相关《习题答案 46Word文档格式.docx(16页珍藏版)》请在冰豆网上搜索。
请输入性别代号:
"
);
sex=(char)System.in.read();
switch(sex){
case'
m'
:
System.out.println("
男性"
break;
f'
System.out.println("
女性"
default:
未知"
}
}
}
(2)假定在银行中存款5000元,按6.25%的年利率计算,试问经过多少年后才能连本带利翻一番?
试编程实现之。
publicstaticvoidmain(Stringargs[])
doublem=5000.0;
//初始存款额
doubles=m;
//当前存款额
intcount=0;
//存款年数
do
{
s=(1+0.0625)*s;
count++;
}while(s<
2*m);
System.out.println(count+"
年后连本带利翻一番"
(3)写出下列程序的运行结果。
classless2_test1
{publicstaticvoidmain(Stringargs[])
{inti=0;
outer:
for(;
true;
)
{inner:
i<
10;
i++)
{if(i==2)
{System.out.println("
continue2"
continue;
}//ifi=2
if(i==3)
{System.out.println("
break3"
breakouter;
}//ifi=3
System.out.println(i+"
.I'
mok"
}//inner
}//outer
theprogramisended"
}//main
}//class
程序的运行结果为:
0.I'
mok
1.I'
continue2
break3
theprogramisended
4.5思考与练习
1.选择题
(1)A
(2)D(3)A(4)C(5)B(6)C(7)B(8)C(9)B(10)C
2.程序设计题
(1)
classStudent
privateStringname;
privateintage;
Student()
{name=”无名氏”;
age=20;
publicvoidsetName(Stringname)
{this.name=name;
publicStringgetName()
{returnname;
publicvoidsetAge(intage)
{this.age=age;
}
publicintgetAge()
{returnage;
publicBooleanisSameAge(Students)
{if(s.age==this.age)returntrue;
elsereturnfalse;
(2)
publicclassAccount{
Stringid,owner;
doublebalance;
Account(){id=null;
owner=null;
balance=0.00;
Account(Stringid,Stringowner,doublebalance){
this.id=id;
this.owner=owner;
this.balance=balance;
publicvoidsetID(Stringid){
publicvoidsetOwner(Stringowner){
this.owner=owner;
publicdoubledeposit(doubleamount){
if(id==null)System.out.println("
账号未知!
else
账户"
+id+"
原来余额为"
+balance);
向账户"
存入"
+amount);
balance+=amount;
现余额为"
returnbalance;
publicdoublewithdraw(doubleamount){
elseif(balance<
amount)
System.out.println("
余额不足!
else{
从账户"
支取"
balance-=amount;
publicvoidquery(){
账号为:
账户持有人姓名为:
+owner+"
账户余额为:
publicstaticvoidmain(Stringargs[]){
AccountJimmy=newAccount("
001"
"
Jimmy"
1000.00);
Jimmy.setID("
00001"
Jimmy.setOwner("
alice"
Jimmy.deposit(500.00);
Jimmy.withdraw(200.00);
Jimmy.query();
5.5思考与练习
(1)B
(2)A(3)A(4)B(5)B(6)A(7)D(8)CD(9)C(10)B
interfaceShape
floatgetArea();
voidoutPut();
classCircleimplementsShape
floatr;
Circle(floatr)
{this.r=r;
publicfloatgetArea()
{return3.14*r*r}
publicvoidoutPut()
{System.out.println(“圆形面积为”+getArea());
classTestCircle()
{publicstaticvoidmain(String[]args)
{CircleC1=newCircle(5.0f);
C1.outPut();
6.4思考与练习
(1)String和StringBuffer有什么区别?
String类表示了定长、不可变的字符序列,Java语言中所有的字符串常量(如“abc”)都作为此类的实例来实现。
它的特点是一旦赋值,便不能改变其指向的字符串对象,如果更改,就会指向一个新的字符串对象。
StringBuffer类可以完成字符串的动态添加、插入和替换等操作。
StringBuffer表示变长的和可写的字符序列。
StringBuffer类可以插入其中或追加其后的字符或子字符串,还可以针对这些添加操作自动地增加空间,同时它通常还有比实际需要更多的预留字符,从而允许增加空间。
(2)编程产生0~100之间的随机数。
importjava.util.*;
publicclassStringTokenizerDemo{
publicstaticvoidmain(Stringargs[]){
intk=(int)(Math.random()*100);
System.out.print(k);
7.6思考与练习
(1)使用图形用户界面编写一个猜数游戏程序GuessNumber.java,程序生成一个10以内的整数,用户从键盘输入猜测的数,程序提示猜的数比生成的数大还是小,直到猜对为止。
请自己设置图形用户界面的布局。
importjava.awt.*;
importjava.awt.event.*;
publicclassGuessNumberextendsFrameimplementsActionListener{
Labell;
TextFieldguess,result;
Buttoncheck;
inti1;
GuessNumber(){
i1=(int)(Math.random()*10)+1;
l=newLabel("
请输入猜测的数"
guess=newTextField(5);
result=newTextField(20);
check=newButton("
查看结果"
this.setLayout(newFlowLayout());
add(l);
add(guess);
add(result);
add(check);
check.addActionListener(this);
this.setSize(200,200);
validate();
this.setVisible(true);
publicvoidactionPerformed(ActionEvente){
inti2;
i2=Integer.parseInt(guess.getText());
if(i1<
i2){
result.setText("
猜大了,请重新猜!
guess.setText("
}
elseif(i1>
猜小了,请重新猜!
else{
恭喜您,猜对了!
publicstaticvoidmain(Stringargs[]){
newGuessNumber();
(2)设计一个界面程序ClickMe.java,内含一个按钮,开始运行时,按钮显示“ClickMe”字样,当按下按钮时,按钮上面的文字变成了“ClickMeAgain”,再按一次,则变回原来的“ClickMe”字样,如此循环。
publicclassClickMeextendsFrameimplementsActionListener{
Buttonb;
intcount=0;
publicClickMe(){
b=newButton("
ClickMe"
add(b);
this.setSize(500,500);
validate();
this.setVisible(true);
b.addActionListener(this);
publicvoidactionPerformed(ActionEvente){
count++;
if(count%2!
=0)b.setLabel("
ClickMeAgain"
elseb.setLabel("
newClickMe();
(3)编写一个数字-英文转换的图形用户界面程序EnglishToNumber.java,包括一个文本框和一个标签。
在文本框中输入一个数字(0~9),按回车键,在标签处显示对应的英文单词。
0~zero,1~one,……9~nine.,如图所示。
若输入非数字字符,在标签处显示“输入错误!
”。
若输入的数据超过0~9的范围,提示“输入的数据超出范围!
”
publicclassEnglishToNumberextendsFrameimplementsActionListener{
TextFieldt;
publicEnglishToNumber(){
t=newTextField(10);
l=newLabel();
this.setLayout(newBorderLayout());
add(t,"
North"
add(l,"
Center"
t.addActionListener(this);
if(Integer.parseInt(t.getText())==0)
l.setText("
zero"
elseif(Integer.parseInt(t.getText())==1)
l.setText("
one"
elseif(Integer.parseInt(t.getText())==2)
two"
elseif(Integer.parseInt(t.getText())==3)
three"
elseif(Integer.parseInt(t.getText())==4)
four"
elseif(Integer.parseInt(t.getText())==5)
five"
elseif(Integer.parseInt(t.getText())==6)
six"
elseif(Integer.parseInt(t.getText())==7)
seven"
elseif(Integer.parseInt(t.getText())==8)
eight"
elseif(Integer.parseInt(t.getText())==9)
nine"
elseif(Integer.parseInt(t.getText())>
9)
输入的数据超出范围"
else
输入错误!
newEnglishToNumber();
(4)编写一个图形界面程序WelcomeYou,java,包括两个文本框和一个按钮。
在第一个文本框中输入一个姓名,当按回车时,在第二个文本框中输出“姓名,欢迎你!
例如,输入“kitty”,输出“kitty,欢迎你!
”,如图所示。
//引入类库
classWelcomeYouextendsFrameimplementsActionListener{
Labelprompt;
//声明标签对象
TextFieldinput,output;
//声明文本对象
Buttonbtn;
//声明按钮对象
FrameInOut(){
super("
图形界面的JavaApplication程序"
prompt=newLabel("
请输入您的姓名"
input=newTextField(6);
output=newTextField(20);
btn=newButton("
关闭"
//产生按钮并初始化
setLayout(newFlowLayout());
//窗体布局
add(prompt);
//在窗体上填加控件
add(input);
add(output);
add(btn);
input.addActionListener(this);
//为控件填加监听功能
btn.addActionListener(this);
setSize(200,200);
//窗体大小
setVisible(true);
//可见
publicvoidactionPerformed(ActionEvente){
if(e.getSource()==input)//判断动作控件是否为文本
output.setText(input.getText()+“,欢迎你!
”);
//将输入内容与“,欢迎你!
”连接后在输出文本中输出
else{
dispose();
System.exit(0);
//关闭窗体}
publicstaticvoidmain(Stringargs[]){
newWelcomeYou();
//声明产生窗体
8.6思考与练习
声明窗口类ReadFile,在窗口中输入用户名和密码,并将用户名和密码保存到文件Secret.txt中。
程序的运行界面如下图所示:
publicclassReadFileextendsFrameimplementsActionListener{
Labelm_id=newLabel("
用户名:
Labelm_key=newLabel("
密码:
Buttonm_input=newButton("
TextFieldId=newTextField(10);
TextFieldKeyid=newTextField(10);
StringoutFilename;
StringBufferm_buf=newStringBuffer();
ReadFile(){
this.addWindowListener(newWindowAdapter(){
publicvoidwindowClosing(WindowEvente){System.exit(0);
}});
this.setLayout(newFlowLayout());
add(m_id);
add(Id);
add(m_key);
add(Keyid);
Keyid.setEchoChar('
*'
add(m_input);
m_input.addActionListener(this);
setSize(400,100);
publicvoidactionPerformed(ActionEvente){
Stringcmd=e.getActionCommand();
if(cmd=="
){
StringIdstrin
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 习题答案 46 习题 答案