Java程序设计课程作业文档格式.docx
《Java程序设计课程作业文档格式.docx》由会员分享,可在线阅读,更多相关《Java程序设计课程作业文档格式.docx(22页珍藏版)》请在冰豆网上搜索。
![Java程序设计课程作业文档格式.docx](https://file1.bdocx.com/fileroot1/2023-1/1/086bd82a-0eaf-4f39-921d-a02b38cfbdda/086bd82a-0eaf-4f39-921d-a02b38cfbdda1.gif)
2||4%2
2、任意准备一份学生成绩表,其中包括至少3门课程、每门课程至少10名同学的成绩。
请编写程序完成以下功能:
(1)统计并输出各门课程的平均成绩。
(2)输出等级表:
优、良、中、及格与不及格。
importjava.util.*;
classstudent{
Stringnum;
doublemath;
doubleenglish;
doublechinese;
publicclassTest{
publicstaticvoidmain(String[]agrs){
studentstu[]=newstudent[11];
for(inti=0;
i<
10;
i++)
stu[i]=newstudent();
Scannerreader=newScanner(System.in);
请依次输入十个同学的数学,英语。
语文的成绩:
"
=10;
i++){
System.out.println("
第"
+(i+1)+"
同学的数学,英语。
stu[i].math=reader.nextInt();
stu[i].english=reader.nextInt();
stu[i].chinese=reader.nextInt();
}
doublesum=0;
sum=sum+stu[i].math;
floatA=(float)sum/10;
System.out.println("
数学平均成绩:
+A);
//intsum;
floatB=(float)sum/10;
+B);
floatC=(float)sum/10;
+C);
数学不及格的成绩:
if(stu[i].math<
60)
System.out.println(stu[i].math);
及格:
if(stu[i].math>
优:
80)
良:
90)
英语不及格的成绩:
if(stu[i].english<
System.out.println(stu[i].english);
if(stu[i].english>
语文不及格的成绩:
if(stu[i].chinese<
System.out.println(stu[i].chinese);
if(stu[i].chinese>
}
3、编写程序,用数组存储并输出乘法九九表。
//编写程序,用数组存储并输出乘法九九表
publicclassTest{
publicstaticvoidmain(String[]agrs){
int[][]a=newint[9][9];
for(inti=1;
=9;
for(intj=1;
j<
=i;
j++){
a[i-1][j-1]=i*j;
System.out.print(j+"
*"
+i+"
="
+i*j+"
"
if(i==j)
System.out.print("
\n"
intn;
for(intm=0;
m<
9;
m++){
for(n=0;
n<
=m;
n++){
+a[m][n]);
if(m==n)
System.out.print("
运算结果:
4、有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
5、打印出所有的"
水仙花数"
,所谓"
是指一个三位数,其各位数字立方和等于该数本身。
例如:
153是一个"
,因为153=1的三次方+5的三次方+3的三次方。
第三章Java面向对象
1、为某研究所编写一个通用程序,用来计算每一种交通工具运行1000公里所需的时间,已知每种交通工具的参数都是3个整数A、B、C的表达式。
现有两种工具:
Car007和Plane,其中Car007的速度运算公式为:
A*B/C,Plane的速度运算公式为:
A+B+C。
需要编写三类:
ComputeTime.java,Plane.java,Car007.java和接口Common.java,要求在未来如果增加第3种交通工具的时候,不必修改以前的任何程序,只需要编写新的交通工具的程序。
其运行过程如下,从命令行输入ComputeTime的四个参数,第一个是交通工具的类型,第二、三、四个参数分别时整数A、B、C,举例如下:
计算Plane的时间:
javaComputeTimePlane203040"
计算Car007的时间:
javaComputeTimeCar007233445"
如果第3种交通工具为Ship,则只需要编写Ship.java,运行时输入:
javaComputeTimeShip223344"
提示:
充分利用接口的概念,接口对象充当参数。
实例化一个对象的另外一种办法:
Class.forName(str).newInstance();
例如需要实例化一个Plane对象的话,则只要调用Class.forName("
Plane"
).newInstance()便可。
interfaceCommon{
abstractdoublegetv(inta,intb,intc);
classCar007implementsCommon{
publicdoublegetv(inta,intb,intc){
if(c==0){
参数C为0"
return0;
}
else
returna*b/c;
classPlaneimplementsCommon{
returna+b+c;
publicclasszuo31{
publicstaticvoidmain(String[]agrs){
2、编写一个学生类Student,要求:
(1)学生类Student属性有:
id:
long型,代表学号name:
String类对象,代表姓名age:
int型,代表年龄sex:
boolean型,代表性别(其中:
true表示男,false表示女)phone:
String类对象,代表联系电话
(2)学生类Student的方法有:
Student(longi,Stringn,inta,booleans,Stringp):
有参构造函数,形参表中的参数分别初始化学号、姓名、年龄、性别和联系电话。
intgetAge()():
获取年龄作为方法的返回值。
booleangetSex()():
获取性别作为方法的返回值。
StringgetPhone():
获取联系电话作为方法的返回值。
publicStringtoString():
以姓名:
联系电话的形式作为方法的返回值。
classStudent{
longid;
//代表学号
Stringname;
//代表姓名
intage;
//代表年龄
booleansex;
//代表性别(其中:
true表示男,false表示女)
Stringphone;
//,代表联系电话
Student(longi,Stringn,inta,booleans,Stringp){
id=i;
age=a;
name=n;
sex=s;
phone=p;
intgetAge(){
returnage;
booleangetSex(){
returnsex;
StringgetPhone(){
returnphone;
publicStringtoString(){
returnname+phone;
//以姓名:
Strings,phone,np;
intage;
Studentr=newStudent(201108011,"
郭文杰"
20,false,"
booleana=r.getSex();
if(a==true)
s="
男"
;
else
女"
age=r.getAge();
phone=r.getPhone();
该同学的姓名是"
+r.name+"
学号:
+r.id+"
年龄:
+age+"
性别:
+s+"
电话:
+phone);
np=r.toString();
System.out.println(np);
3、利用接口编写三角形、矩形的面积和周长的程序。
interfaceShape{//接口
abstractdoublegetArea();
abstractdoublegetlength();
classRectangleimplementsShape{//长方形的类
privatedoublea;
privatedoubleb;
publicRectangle(doublei,doublej){
a=i;
b=j;
publicdoublegetArea(){
returna*b;
publicdoublegetlength(){
return2*(a+b);
classtriangleimplementsShape{//三角形的类
doublea,b,c;
doublep;
publictriangle(doublei,doublej,doublek){
a=i;
b=j;
c=k;
p=(double)(Math.round(a+b+c)/2.0);
//将p保留小数位
returnjava.lang.Math.sqrt(p*(p-a)*(p-b)*(p-c));
//三角形面积公式
publicclasszuoye3{
doubles1,s2,c1,c2;
triangletri=newtriangle(3,4,5);
//三角形对象
Rectanglerec=newRectangle(4,5);
//矩形对象
s1=tri.getArea();
c1=tri.getlength();
s2=rec.getArea();
c2=rec.getlength();
三角形的面试是:
+s1+"
周长是:
+c1);
矩形的面试是:
+s2+"
+c2);
4、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。
但是要保证汉字不被截半个,如"
我ABC"
4,应该截为"
我AB"
,输入"
我ABC汉DEF"
,6,应该输出为"
而不是"
我ABC+汉的半个"
。
第四章Java异常处理
1、写程序运行结果:
publicclassA{
staticintsome(){
try{
try"
return1;
finally{
finally"
publicstaticvoidmain(Stringarg[]){
System.out.println(some());
2、先从键盘输入一个十六进制数,再将其转化为十进制数,然后输出。
若输入的不是一个有效的十六进制数,则抛出异常。
publicclassdex{
Scannerreader=newScanner(System.in);
Strings;
intn,m;
System.out.println("
请输入十六进制数:
try{
s=reader.next();
n=Integer.parseInt(s,16);
System.out.println(n);
catch(InputMismatchExceptione){
e.printStackTrace();
3、先编写一个方法,它将格式为“yyyy/mm/dd”形式的日期字符串转化为日期对象。
若日期字符串不符合以上规定,则抛出异常。
再在main方法中对正常和异常输入的日期字符串分别进行验证,并输出转换后的日期对象。
第五章Java常见类
1、设有一个由10个英文单词构成的字符串数组,要求:
(1)统计以字母“w”开头的单词数;
(2)统计单词中含“or”字符串的单词数;
(3)统计长度为3的单词数。
代码是:
publicclassArray{
publicstaticvoidmain(String[]agrs){
String[]word=newString[10];
intcount1=0,count2=0,count3=0;
inti=0,j=0;
请输入十个单词:
for(j=0;
word.length;
word[j]=reader.next();
do{
if(word[i].charAt(0)=='
w'
)
count1++;
if(word[i].length()==3)
count3++;
if(word[i].contains("
or"
))
count2++;
i++;
}while(i<
word.length);
在这是个单词中首字母是“w”的单词总共有:
+count1+"
个"
在这是个单词中含有“or”的单词总共有:
+count2+"
在这是个单词中长度为3的单词总共有:
+count3+"
2、利用随机函数产生20个10~90之间的不重复整数,将这些数拼接在一个字符串中,用逗号隔开(每产生一个新数,要保证在该串中不存在)。
然后将字符串中的整数分离存放到一个数组中,将数组的内容按由小到大的顺序输出。
importjava.util.Random;
publicclassrand{
publicstaticvoidmain(String[]agrs){
Randomrand=newRandom();
int[]num=newint[20];
inta;
num.length;
){//随机产生20个10~90之间的不重复整数
a=rand.nextInt();
intb=a%90;
for(intj=i;
j>
=0;
j--){
if(b==num[j])b=0;
if(b>
10){
num[i]=b;
i++;
}
Strings="
System.out.print("
产生的20个随机数是\n"
i++){
System.out.print(num[i]+"
s=s+num[i];
\n链接成字符串后的结果时:
+s);
inttem;
i++){//排序
tem=num[i];
for(intj=i+1;
if(num[j]<
tem){
tem=num[j];
num[j]=num[i];
num[i]=tem;
排序后的结果时:
}
3、先任意输入不超过10个人的姓名和电话到电话簿,然后从电话簿中查询指定人的电话。
classpeople{//建立类包含姓名与电话
Stringname,number;
publicpeople(Stringn,Stringm){
number=m;
publicclassphonenum{
people[]p=newpeople[10];
//数组对象
Str