Java程序设计实验报告实验报告册.docx
- 文档编号:27510272
- 上传时间:2023-07-02
- 格式:DOCX
- 页数:73
- 大小:354.34KB
Java程序设计实验报告实验报告册.docx
《Java程序设计实验报告实验报告册.docx》由会员分享,可在线阅读,更多相关《Java程序设计实验报告实验报告册.docx(73页珍藏版)》请在冰豆网上搜索。
Java程序设计实验报告实验报告册
实验1JAVA编程基础
一、实验目的
1、熟练掌握JDK编写调试Java应用程序及Java小程序的方法;
2、熟练掌握Java应用程序的结构;
3、了解Java语言的特点,基本语句、运算符及表达式的使用方法;
4、熟练掌握常见数据类型的使用;
5、熟练掌握if-else、switch、while、do-while、for、continue、break、return语句的使用方法;
6、熟练掌握数组和字符串的使用。
二、实验要求
1、编写程序要规范、正确,上机调试过程和结果要有记录;
2、做完实验后给出本实验的实验报告。
三、实验设备、环境
安装有JDK、Eclipse软件的计算机。
四、实验步骤
采用记事本编写一个简单的应用程序
(1)新建一个记事本文件,重新命名为Hello.java
(2)打开记事本,输入以下内容(注意大小写):
publicclassHello{
publicstaticvoidmain(Stringargs[]){
System.out.println("hellohello");
}
}
(3)请记录程序编译和执行的步骤,并附上运行结果图。
进入文件所在目录cdclass\java\java_ex1
编译N:
\class\java\java_ex1>javacHello.java
运行javaHello
结果:
五、实验内容
1、从键盘上输入学号、班级和姓名,并附上运行结果图。
importjava.util.Scanner;
publicclassKeyboardDemo{
publicstaticvoidmain(String[]args){
Scannerscan=newScanner(System.in);
System.out.print("请输入班级:
");
Stringcls=scan.nextLine();
System.out.print("请输入姓名:
");
Stringname=scan.nextLine();
System.out.print("请输入学号:
");
Stringnum=scan.nextLine();
System.out.println("班级:
"+cls+"姓名:
"+name+"学号"+num);
}
}
2、编写一个程序,用来判断输入的是大写字母,小写字母,数字还是其他的字符(if)。
importjava.util.Scanner;
publicclassCharDemo{
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
Scannerscan=newScanner(System.in);
while(true){
System.out.print("请输入一个字符:
");
charch=scan.nextLine().charAt(0);
if(Character.isUpperCase(ch))
System.out.println("该字符是大写字母:
"+ch);
elseif(Character.isLowerCase(ch))
System.out.println("该字符是小写字母:
"+ch);
elseif(Character.isDigit(ch))
System.out.println("该字符是数字:
"+ch);
else
System.out.println("该字符是其他字符!
");
}
}
}
3、编写一个程序,实现简单加、减、、乘除的运算,要求从键盘上输入数据(switch)。
importjava.util.Scanner;
publicclassCount{
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
intnum1;
intnum2;
charfh;
Scannersc=newScanner(System.in);
while(true)
{
System.out.println("请输入第一个数:
");
num1=sc.nextInt();
System.out.println("请输入您的运算符:
");
fh=sc.next().charAt(0);
System.out.println("请输入第二个数:
");
num2=sc.nextInt();
switch(fh)
{
case'+':
{
System.out.println("num1+num2="+(num1+num2));
break;
}
case'-':
{
System.out.println("num1-num2="+(num1-num2));
break;
}
case'*':
{
System.out.println("num1*num2="+(num1*num2));
break;
}
case'/':
{
if(num2==0)
{
break;
}
else
{
System.out.println("num1/num2="+(num1/num2));
break;
}
}
default:
{
System.out.println("输入有误!
");
break;
}
}
}
}
}
4、定义一个一维数组,通过键盘输入10个两位整数,并求出其中的最大值和平均值,把结果显示出来。
importjava.util.Scanner;
publicclassArrayDemo{
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
Scannerscan=newScanner(System.in);
intarr[]=newint[10];
intsum=0;
System.out.print("请输入10个两位整数:
");
for(inti=0;i<10;i++)
{
arr[i]=scan.nextInt();
sum+=arr[i];
}
System.out.println("sum:
"+String.format("%d",sum));
System.out.println("average:
"+String.format("%.2f",(double)sum/10));
}
}
5、定义一个5行5列二维数组,用随机数给二维数组赋值,按照5行5列的格式显示
出二维数组的内容,把最大值显示出来。
publicclassArray5_5Demo{
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
intarr[][]=newint[5][5];
for(inti=0;i<5;i++)
for(intj=0;j<5;j++)
{
arr[i][j]=(int)(Math.random()*90+10);
}
for(inti=0;i<5;i++)
{
for(intj=0;j<5;j++)
{
System.out.print(String.format("%4d",arr[i][j]));
}
System.out.println();
}
}
}
6、实现不规则二维数组的输入和输出。
importjava.util.Scanner;
publicclassNoRuleArrDemo{
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
intarr[][]=newint[3][];
arr[0]=newint[3];
arr[1]=newint[2];
arr[2]=newint[4];
Scannerscan=newScanner(System.in);
for(inti=0;i { for(intj=0;j { System.out.print("请输入数据(0-10000): "); arr[i][j]=scan.nextInt(); } } System.out.println("数组元素为: "); for(inti=0;i { for(intj=0;j System.out.print(String.format("%-5d",arr[i][j])); System.out.println(); } } } 实验项目名称: 面向对象编程实验学时: 8 同组学生姓名: 无实验地点: A101 实验日期: 4月15日-5月6日实验成绩: 批改教师: 马青霞批改时间: 实验2面向对象编程 一、实验目的、要求 1、熟练掌握Java语言类定义的基本语法; 2、熟练掌握类成员的访问控制,对象建立的方法; 3、熟练掌握类构造方法、成员方法的定义和重载; 4、熟练掌握类继承、多态和抽象性; 5、熟练掌握接口的定义和实现方法; 6、掌握基本的异常处理方法。 二、实验要求 1、编写程序要规范、正确,上机调试过程和结果要有记录; 2、做完实验后给出本实验的实验报告。 三、实验设备、环境 安装有JDK、Eclipse软件的计算机。 四、实验内容 1、定义一个Students类,包括学号、姓名、性别、年龄4个属性,要求在性别属性中增加对性别的判断(只能输入男和女),在年龄属性中提供对不合法(年龄在10至50之间)输入的判断,并提供方法显示学生信息。 构建该类,并测试。 packagetest1; classStudents{ privateStringnum; privateStringname; privatecharsex; privateintage; Students(Stringnum,Stringname,charsex,intage){ this.num=num; this.name=name; this.sex=sex; this.age=age; } booleanjudgeSex(){ if(sex=='f'||sex=='m') returntrue; returnfalse; } booleanjudgeAge(){ if(age>10&&age<50) returntrue; returnfalse; } voidshow(){ System.out.println("学号: "+num+"\n姓名: "+name+"\n性别: "+sex+"\n年龄: "+age); } } publicclassdemo1{ publicstaticvoidmain(String[]args){ //TODOAuto-generatedmethodstub Studentsstu=newStudents("1205104006","wjw",'f',21); if(stu.judgeAge()&&stu.judgeSex()) stu.show(); else System.out.println("学生初始化信息有误,请重新输入! "); } } 2、定义一个方法,用数组作为参数来传递数据(请补充下面的代码)。 packagetest1; importjava.util.Arrays; publicclassdemo1{ publicstaticvoidmain(String[]args){ inta[]={10,20,15,40,50,35}; Myclassmyclass=newMyclass(); System.out.println("排序前: "); myclass.printArr(a); Arrays.sort(a); System.out.println("排序后"); myclass.printArr(a); } } classMyclass { //定义一个方法,实现数组内容的输出 voidprintArr(int[]arr){ for(inti=0;i System.out.print(String.format("%4d",arr[i])); } System.out.println(); } } 3、定义一个学生类,把学生类当作对象来传递或者用对象数组作为参数传递。 packagetest1; classStudents{ privateStringnum; privateStringname; privatecharsex; privateintage; Students(Stringnum,Stringname,charsex,intage){ this.num=num; this.name=name; this.sex=sex; this.age=age; } voidshow(){ System.out.println("学号: "+num+"\n姓名: "+name+"\n性别: "+sex+"\n年龄: "+age); } } publicclassdemo2{ publicstaticvoidmain(String[]args){ Studentsstu[]=newStudents[2]; stu[0]=newStudents("1205104006","wjw",'f',21); stu[1]=newStudents("12051040","ys",'m',22); print(stu); } publicstaticvoidprint(Studentsstu[]){ for(inti=0;i System.out.println("第"+(i+1)+"个学生的信息: "); stu[i].show(); } } } 4、利用方法的重载两个整数和两个双精度类型数据求和。 packagetest1; classAdd{ publicintAdd(intnum1,intnum2){ returnnum1+num2; } publicdoubleAdd(doublenum1,doublenum2){ returnnum1+num2; } } publicclassdemo3{ publicstaticvoidmain(String[]args){ intnum1=10; intnum2=20; doublenum3=10.23; doublenum4=30.74; Addadd=newAdd(); System.out.println("int和: "+num1+"+"+num2+"="+add.Add(num1,num2)); System.out.println("double整数和: "+num3+"+"+num4+"="+String.format("%.2f",add.Add(num3,num4))); } } 5、定义一个Area类,用构造函数重载,实现矩形的面积,圆的面积,梯形的面积,定义一个ShowArea方法,显示结果。 packagetest1; classArea{ privatestaticfinaldoublePI=3.14;; privatedoublearea; Area(doublewidth,doublelength){ area=width*length; } Area(doubleradius){ area=PI*radius*radius; } Area(doublelength1,doublelength2,doubleheight){ area=(length1+length2)*height/2; } publicvoidshowArea(){ System.out.println(String.format("%.2f",area)); } } publicclassAreaDemo{ publicstaticvoidmain(String[]args){ Arearectangle=newArea(3.0,5.5); Areacycle=newArea(2.4); Areaechelon=newArea(3.2,4.5,4); System.out.print("rectanglearea: "); rectangle.showArea(); System.out.print("cyclearea: "); cycle.showArea(); System.out.print("echelonarea: "); echelon.showArea(); } } 6、在该程序中构造一个Person基类,在Person类的基础上再构造Student类,实现方法的覆盖。 classPerson{ privateintage; privateStringname; Person(Stringname,intage){ this.name=name; this.age=age; } voidshow(){ System.out.println("name: "+name+"\nage: "+age); } voidmethod(){ System.out.println("method调用"); } } classStudentextendsPerson{ Student(Stringname,intage){ super(name,age); } voidmethod(){ System.out.println("method调用.......study...."); } } publicclassExtendDemo{ publicstaticvoidmain(String[]args){ Studentstu=newStudent("wjw",21); stu.show(); stu.method(); } } 7、用面向对象的知识,实现实验一的计算器程序。 packagehtp; importjava.util.Scanner; classOperation{ privateintnum1; privateintnum2; charopt; publicintgetNum1(){ returnnum1; } publicvoidsetNum1(intnum1){ this.num1=num1; } publicintgetNume2(){ returnnum2; } publicvoidsetNume2(intnume2){ this.num2=num2; } publicchargetOpt(){ returnopt; } publicvoidsetOpt(charopt){ this.opt=opt; } Operation(intnum1,charopt,intnum2){ this.num1=num1; this.num2=num2; this.opt=opt; } publicvoidCal(){ switch(opt){ case'+': { System.out.println("num1+num2="+(num1+num2)); break; } case'-': { System.out.println("num1-num2="+(num1-num2)); break; } case'*': { System.out.println("num1*num2="+(num1*num2)); break; } case'/': { if(num2==0) { break; } else { System.out.println("num1/num2="+
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 程序设计 实验 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)