郭泽华java实验报告.docx
- 文档编号:6712004
- 上传时间:2023-01-09
- 格式:DOCX
- 页数:55
- 大小:1.23MB
郭泽华java实验报告.docx
《郭泽华java实验报告.docx》由会员分享,可在线阅读,更多相关《郭泽华java实验报告.docx(55页珍藏版)》请在冰豆网上搜索。
郭泽华java实验报告
本科实验报告
课程名称:
Java语言程序设计
实验项目:
Java实验
实验地点:
致远楼401
专业班级:
软件1115学号:
2011005569
学生姓名:
郭泽华
指导教师:
韩晓红
2013年11月
实验1Java语言基础
1.实验目的
(1)通过实验,掌握Java语言程序设计的基本方法。
(2)学会Java语言中标示符的命名、运算符和表达式的应用。
(3)熟练地掌握Java程序流程控制语句的应用。
2.实验内容
(1)编写应用程序,计算100(含100)以内所有偶数的和。
packagecom.zhangqian.exercise1;
publicclassSumEvenNumber{
publicstaticvoidmain(String[]args){
intsum=0;
intn=100;
for(inti=0;i<=n;i++){
if(i%2==0){
sum+=i;
}
}
System.out.println("1--100内偶数和为:
"+sum);
}
}
(2)“水仙花数”是指一个3位数,其个位、十位、百位上的数字的立方和等于该数本身,例如371=33+73+13,因此371是一个水仙花数。
编写程序,求所有的水仙花数。
packagecom.zhangqian.exercise1;
publicclassFlower{
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
intn=1000;
intm;
for(inti=100;i m=(i/100)*(i/100)*(i/100)+((i/10)%10) *((i/10)%10)*((i/10)%10)+(i%100%10) *(i%100%10)*(i%100%10); if(m==i){ System.out.println("水仙花数为: "+i); } } } } (3)编写一个程序,求1-100间的素数。 packagecom.zhangqian.exercise1; publicclassSushu{ publicstaticvoidmain(String[]args){ intn=100; for(inti=2;i<=n;i++){ if(ss(i)){ System.out.println("素数为"+i); } } } publicstaticbooleanss(intn){ booleanresult=true; for(inti=2;i<=n/2;i++){ if(n%i==0){ result=false; break; } } returnresult; } } (4)有一函数: x(x<1) Y=3x-2(1≤x<10) 4x(x≥10) 写一程序,给定x值,输出y值。 packagecom.zhangqian.exercise1; importjava.io.*; publicclassHanshu{ publicstaticvoidmain(String[]args)throwsIOException{ //TODOAuto-generatedmethodstub doublex=0.0; doubley=0.0; System.out.println("请输入x: "); BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in)); x=Double.parseDouble(br.readLine()); if(x<1) y=x; elseif(x>=1&&x<10) y=3*x-2; elseif(x>=10) y=4*x; System.out.println("y="+y); } } (5)使用for循环语句,编写程序输出以下图案。 ☆ ☆☆☆ ☆☆☆☆☆ ☆☆☆☆☆☆☆ ☆☆☆☆☆ ☆☆☆ ☆ packagecom.zhangqian.exercise1; publicclassStar{ publicstaticvoidmain(String[]args){ //TODOAuto-generatedmethodstub for(inti=1;i<=4;i++){ for(intk=0;k<=4-i;k++){ System.out.print(""); } for(intj=1;j<=2*i-1;j++){ System.out.print("☆"); } System.out.println(); } for(inti=3;i>0;i--){ for(intk=0;k<=4-i;k++){ System.out.print(""); } for(intj=1;j<=2*i-1;j++){ System.out.print("☆"); } System.out.println();} } } (6)编写程序,输出从公元1900年到2100年所有闰年的年号,每输出5个年号换一行。 判断年是否为闰年的条件是: ①若年号可以被4整除,而不能被100整除,则是闰年;②若年号可以被400整除,也是闰年。 packagecom.zhangqian.exercise1; publicclassYear{ publicstaticvoidmain(String[]args){ //TODOAuto-generatedmethodstub intn=2100; intk=0; for(longy=1900;y if((y%4==0&&y%100! =0)||y%400==0){ System.out.print(y+"是闰年"+""); k+=1; if(k%5==0) System.out.println(""); } } } } 3.实验预习 (1)复习本章所学内容。 (2)写出实验内容中第 (2)、(3)题两个程序的源代码,作为预习报告。 4.实验结论 实验过程中,注意记录以下内容 (1)遇到的问题及解决办法。 在编写星星程序时,不会它的算法,通过XX,然后自己试运行,得出了最后的结果。 另外,在程序中遇到问题,积极的问了同学,解决了我的问题。 (2)实验体会。 我觉得在编写程序时,要细心并且要有耐心,认真的写每一个程序,就一定会有收获。 实验2数组和字符串编程 1.实验目的 (1)通过实验,掌握Java语言中数组、字符串程序设计的基本方法。 (2)较熟练地掌握Java程序数组的应用、字符串处理操作的方法应用。 2.实验内容 (1)编写一个程序,在控制台输入10个数,按大小顺序输出。 packagecom.zhangqian.exercise1; importjava.io.*; publicclassOrder{ publicstaticvoidmain(String[]args)throwsIOException{ //TODOAuto-generatedmethodstub doublet; System.out.println("请输入10个数"); doublenum[]=newdouble[10]; BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in)); Stringstr; for(inti=0;i<10;i++){ str=br.readLine(); num[i]=Double.parseDouble(str); } for(intj=1;j<10;j++){//冒泡排序 for(inti=0;i<10-j;i++) if(num[i]>num[i+1]){ t=num[i]; num[i]=num[i+1]; num[i+1]=t; } } System.out.println("顺序为: "); for(intk=0;k<10;k++){ System.out.print(num[k]+""); } } } (2)求一个3*3矩阵对角元素之和。 packagecom.zhangqian.exercise1; importjava.io.*;; publicclassJuzhen{ publicstaticvoidmain(String[]args)throwsIOException{ //TODOAuto-generatedmethodstub inta[][]=newint[3][3]; System.out.println("请输入3*3矩阵: "); BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in)); Stringstr; for(inti=0;i<3;i++) for(intj=0;j<3;j++){ str=br.readLine(); a[i][j]=Integer.parseInt(str); } ints=a[0][0]+a[1][1]+a[2][2]; System.out.println("矩阵对角元素之和为: "+s); } } (3)输入一段字符串,统计其中有多少个单词。 (单词用空格隔开) packagecom.zhangqian.exercise1; importjava.io.*; publicclassDanci{ publicstaticvoidmain(String[]args)throwsIOException{ //TODOAuto-generatedmethodstub System.out.println("请输入字符串: "); Stringstr; BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in)); str=br.readLine(); while(str! =null){ String[]a=str.split(""); System.out.println("单词个数为: "+a.length); break; } } } 3.实验预习 (1)将本章所学内容要点进行整理,并认真体会例题中的编程要领。 (2)写出实验内容中第 (2)、(3)题两个程序的源代码,作为预习报告。 4.实验结论 实验过程中,注意记录以下内容: (1)遇到的问题及解决办法。 在编写排序算法时,采用了冒泡排序,对于冒泡排序,产生了一些错误,通过查阅书籍进行改正,最后得到了正确结果。 (2)实验体会 在编写程序时要认真细心,并且要认真了解它的过程,明白它的算法。 实验3Java面向对象程序设计 1.实验目的 掌握Java面向对象程序设计中类、继承、包和接口的概念与应用,能熟练应用方法、类、成员变量等元素。 2.实验内容 (1)创建一个复数类complex,以附属进行数学运算、复数具有如下格式: RealPart+ImaginaryRart*I,其中,I为-1的平方根。 要求如下: 1 利用浮点变量表示此类的私有数据。 提供两个构造方法,一个用于此类声明的对象的初始化;一个为默认的无参构造方法。 2 提供两复数加、减、乘的运算方法。 3 按格式(a,b)打印复数。 其中a为实部,b为虚部。 publicclassComplex{ privatedoublea; privatedoubleb; publicstaticvoidmain(String[]args){ //TODOAuto-generatedmethodstub Complexx=newComplex(2,3); Complexy=newComplex(1,4); Complexc=newComplex(); x.Add(x,y); x.Multiply(x,y); x.Subtraction(x,y); c.Add(c,y); } Complex(){ a=0.0; b=0.0; } Complex(doublea,doubleb){ this.a=a; this.b=b; } publicvoidAdd(Complexx,Complexy){ doublea=x.a+y.a; doubleb=x.b+y.b; System.out.println("相加为: ("+a+","+b+")"); } publicvoidSubtraction(Complexx,Complexy){ doublea=x.a-y.a; doubleb=x.a-y.b; System.out.println("相减为: ("+a+","+b+")"); } publicvoidMultiply(Complexx,Complexy){ doublea=x.a*y.a-x.b*y.b; doubleb=x.a*y.b+x.b*y.a; System.out.println("相乘为: ("+a+","+b+")"); }} (2)创建银行账号Account类,实现存款(balance)的存(deposit)、取(withdraw)和查询(getbalance)等功能。 importjava.io.*; publicclassAccount{ doublefund=1000; publicstaticvoidmain(String[]args)throwsIOException{ //TODOAuto-generatedmethodstub Accounta=newAccount(); System.out.println("存款选择1取款选择2查询选择3"); BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in)); intn=Integer.parseInt(br.readLine()); if(n==1) a.deposit(); elseif(n==2) a.withdraw(); elseif(n==3) a.getbalance(); else System.out.println("输出不正确! "); } publicAccount(){ System.out.println("请选择服务: "); } publicvoiddeposit()throwsIOException{ System.out.println("请输入存款金额: "); BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in)); doubles=Double.parseDouble(br.readLine()); System.out.println("存款成功"+"余额为: "+(s+fund)); } publicvoidwithdraw()throwsIOException{ System.out.println("请输入取款金额: "); BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in)); doubles=Double.parseDouble(br.readLine()); if(s>1000) System.out.println("余额不足,余额为: "+fund); else System.out.println("取款成功: "+"余额为: "+(fund-s)); } publicvoidgetbalance(){ System.out.println("余额为: "+fund); } } (3)编程定义一个接口,实现三个数中求最小值和最大值的方法,并将程序存放在mymaths包中。 packagemymaths; publicclassJiekou{ publicstaticvoidmain(String[]args){ //TODOAuto-generatedmethodstub MAXma=newMAX(1,8,10); ma.max(); ma.min(); } } interfaceTsort{ publicvoidmax(); publicvoidmin(); } classMAXimplementsTsort{ inta,b,c; publicMAX(inta,intb,intc){ this.a=a; this.b=b; this.c=c; } publicvoidmax(){ intmax=0; max=a>b? a: b; max=max>c? max: c; System.out.println("MAX="+max); } publicvoidmin(){ intmin=0; min=a a: b; min=min min: c; System.out.println("MIN="+min); } } (4)编程实现以下简单超市管理,具体要求如下: 1 实现描述超市的类SuperMacket类,具有货架属性,记录系统中现有商品,定义盘点商品的函数check(盘点各类商品的数量,并输出盘点结果),查询商品的函数query,并显示查询结果; packagesssu; importjava.util.ArrayList; importjava.util.List; /** *1、实现描述超市的的类Suppermacket类, *记录系统中现有商品(Goods类), *定义增加商品的函数Append, *删除商品的函数Delete, *查询商品的函数Query, *并显示查询结果; * */ publicclassSuperMarket{ privateList /** *增加商品的 *@paramgoods *@return */ publicStringappend(Goodsgoods) { goodsList.add(goods); return"添加成功"; } /** *删除商品 */ publicStringdelete(Stringname) {Stringflag=null; if(name==null){ flag="删除商品["+name+"]不存在"; } else { for(inti=0;i { Goodsgoods=goodsList.get(i); if(goods.getName().equals(name)) { goodsList.remove(i); flag="删除商品["+name+"]成功"; break; } } } returnflag; } /** *销售 *@paramgoods *@return */ publicStringsale(Goodsgoods) { Stringflag="销售商品["+goods.getName()+"]失败"; if(goods! =null) { for(inti=0;i { Goodsgoods_2=goodsList.get(i); if(goods_2.getName().equals(goods.getName())) { if(goods.getNumber()>goods_2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 郭泽华 java 实验 报告