本科实验报告课程名称:java语言程序设计实验名称:java程序设计实验地点:致向楼201专业班级:学号:学生姓名:指导教师:时间:年月日实验名称实验一Java语言基础实验目的和要求:(1)通过实验,掌握Java语言程序设计的基本方法。(2)学会Java语言中标示符的命名、运算符和表达式的应用。(3)熟练地掌握Java程序流程控制语句的应用。实验内容(1)编写应用程序,计算100(含100)以内所有偶数的和。(2)“水仙花数”是指一个3位数,其个位、十位、百位上的数字的立方和等于该数本身,例如371=33+73+13,因此371是一个水仙花数。编写程序,求所有的水仙花数。(3)编写一个程序,求1-100间的素数。(4)有一函数:x(x1)Y=3x-2(1≤x10)4x(x≥10)写一程序,给定x值,输出y值。(5)使用for循环语句,编写程序输出以下图案。☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆(6)编写程序,输出从公元1900年到2100年所有闰年的年号,每输出5个年号换一行。判断年是否为闰年的条件是:①若年号可以被4整除,而不能被100整除,则是闰年;②若年号可以被400整除,也是闰年。主要仪器设备笔记本电脑eclipse实验记录(写出实验内容中的程序代码和运行结果)(1)packagejzk_shiyan1;publicclassZekang_oushuhe{publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstubintsum=0;for(inti=1;i=100;i++)if(i%2==0){sum=sum+i;}System.out.println(100以内的偶数和为:+sum);}}(2)packagejzk_shiyan1;publicclassZekang_shuixianhua{publicstaticvoidmain(String[]args){intn=1000;for(inti=100;in;i++){inta=i/100,b=(i/10)-(a*10),c=i-((100*a)+(10*b));if(i==a*a*a+b*b*b+c*c*c){System.out.println(水仙花数为:+i);}}}}(3)packagejzk_shiyan1;publicclassZekang_sushu{publicstaticvoidmain(String[]args){System.out.print(1-100间的素数为:2);//TODOAuto-generatedmethodstubfor(inti=1;i=100;i++){for(inta=2;a=i-1;a++){if(i%a==0){break;}if(a=(i-1)){System.out.print(i+);}}}}}(4)importjava.util.Scanner;publicclassZekang_hanshu{publicstaticvoidmain(String[]args){inty=0;System.out.print(请输入一个数字:);Scanners=newScanner(System.in);intx=s.nextInt();if(x1)y=x;elseif(x=1&&x10)y=3*x+2;elseif(x=10)y=4*x;System.out.print(y);}}(5)packagejzk_shiyanyi;importjava.io.*;publicclassZekang_tuan{publicstaticvoidmain(Stringargs[])throwsIOException{for(inti=0;i9;i++){if(i1&&i%2==0);else{System.out.print(\n);for(intk=9;ki/2;k--)System.out.print();for(intj=0;ji;j++){System.out.print(*);}}}for(inti=5;i0;i--){if(i1&&i%2==0);else{System.out.print(\n);for(intk=9;ki/2;k--)System.out.print();for(intj=0;ji;j++){System.out.print(*);}}}}}(6)publicclassjzk_ruinian{publicstaticvoidmain(String[]args){intnum=0;for(inti=1900;i=2100;i++){if((i%4==0&&i%100!=0)||(i%400==0)){num++;if(num%5==0){System.out.println(i);}else{System.out.print(i+);}}}}}遇到的问题和解决方法1.程序没有输出结果。解决方法:使用java提供的“System.out.println()“方法输出数据。2.程序无法运行。解决方法:检查代码是否有语法错误,将鼠标移动到感叹号上查明原因。3.程序运行结果有异常心得体会1.java在使用中每一项的实现都有很多种方法,要尽可能的尝试,区别每种方法的特点。2.java编程时要注意语法、逻辑错误。实验名称实验2数组和字符串编程实验目的和要求1.通过实验,掌握Java语言中数组、字符串程序设计的基本方法。2.较熟练地掌握Java程序数组的应用、字符串处理操作的方法应用。实验内容1.编写一个程序,在控制台输入10个数,按大小顺序输出。2.求一个3*3矩阵对角元素之和。3.输入一段字符串,统计其中有多少个单词。(单词用空格隔开)主要仪器设备笔记本电脑eclipse实验记录(写出实验内容的程序代码和运行结果)(1)packagejzk_shiyan2;importjava.io.*;importjava.util.Arrays;publicclasslishiyu_yi{publicstaticvoidmain(String[]args)throwsNumberFormatException,IOException{intk,count=10;intscore[]=newint[count];BufferedReaderin=newBufferedReader(newInputStreamReader(System.in));for(k=0;kcount;k++){System.out.print(请输入第+(k+1)+个数:);score[k]=Integer.parseInt(in.readLine());}System.out.println(\t键盘输入的10个数为::);for(k=0;kscore.length;k++){System.out.print(score[k]+\t);}System.out.println();Arrays.sort(score);System.out.println(\t排序后的10个数为:);for(k=0;kscore.length;k++){System.out.print(score[k]+\t);}}}(2)packagejzk_shiyan2;importjava.io.*;publicclassjzk_er{publicstaticvoidmain(String[]args){intj,k,m,aH=3,a[][],b[][],c[][];a=newint[aH][aH];b=newint[aH][aH];c=newint[aH][aH];//随机产生两个数组的元素for(j=0;jaH;j++)for(k=0;kaH;k++){a[j][k]=(int)(Math.random()*10);}for(j=0;jaH;j++)for(k=0;kaH;k++){b[j][k]=(int)(Math.random()*10);}System.out.println(a矩阵元素如下:);for(j=0;jaH;j++){for(k=0;kaH;k++)System.out.print(a[j][k]+\t);System.out.println();}System.out.println(b矩阵元素如下:);for(j=0;jaH;j++){for(k=0;kaH;k++)System.out.print(b[j][k]+\t);System.out.println();}System.out.println(求出的(c=a*b)矩形元素如下:);for(j=0;jaH;j++){for(m=0;maH;m++){for(k=0;kaH;k++)c[j][m]=c[j][m]+a[j][k]*b[k][m];System.out.print(c[j][m]+\t\t);}System.out.println();}}}(3)packagejzk_shiyan2;importjava.io.*;publicclassjzk_san{publicstaticvoidmain(String[]args)throwsIOException{Stringstr=;System.out.println(请输入一个字符串:);BufferedReaderbuf=newBufferedReader(newInputStreamReader(System.in));str=buf.readLine();intspace=0;for(inti=0;istr.length();i++){charc=str.charAt(i);intvalue=(int)c;if(value==32){space++;}}System.out.print(单词数为:+(space+1));}}遇到的问题和解决方法1.使用二维数组时要用new创建数组。2.程序报出异常,程序不能运行时,要判断是否要抛出异常。实验体会使用数组时要注意下标值不要超出范围,数组元素的下标从零开始,直到数组元素个数减1为止,如果下标超出范围,则运行时会产生“数组访问越界异常”。实验名称实验3Java面向对象程序设计实验目的和要求掌握Java面向对象程序设计中类、继承、包和接口的概念与应用,能熟练应用方法、类、成员变量等元素。实验内容1.创建一个复数类complex,以附属进行数学运算、复数具有如下格式:RealPart+ImaginaryRart*I,其中,I为-1的平方根。要求如下:①利用浮点变量表示此类的私有数据。提供两个构造方法,一个用于此类声明的对象的初始化;一个为默认的无参构造方法。②提供两复数加、减、乘的运算方法。③按格式(a,b)打印复数。其中a为实部,b为虚部。2.创建银行账号Account类,实现存款(balance)的存(deposit)、取(withdraw)和查询(getbalance)等功能。3.编程定义一个接口,实现三个数中求最小值和最大值的方法,并将程序存放在mymaths包中。4.编程实现以下简单超市管理,具体要求如下:①实现描述超市的类Suppermacket类,具有货架属性,记录系统中现有商品,定义盘点商品的函数check(盘点各类商品的数量,并输出盘点结果),查询商品的函数query,并显示查询结果;②定义商品类Goods,具有商品名称Name,商品价格Price,商品产地Producer等属性,操作Sale(销售商品,余额不足时给予提示)、Add(商品上架操作)和ShowMe(显示商品信息)。③main函数,测试以上所要求的各种功能,即可以根据菜单命令增加、删除、查询商品、盘点商品,以及商品销售和商品上架的操作提示:①超市货架可以使用商品数组,数组大小100表明存放100个商品。②注意实现商品查询的多态性,要求可以