太原理工大学java实验.docx

上传人:b****1 文档编号:662029 上传时间:2023-04-29 格式:DOCX 页数:58 大小:1.06MB
下载 相关 举报
太原理工大学java实验.docx_第1页
第1页 / 共58页
太原理工大学java实验.docx_第2页
第2页 / 共58页
太原理工大学java实验.docx_第3页
第3页 / 共58页
太原理工大学java实验.docx_第4页
第4页 / 共58页
太原理工大学java实验.docx_第5页
第5页 / 共58页
太原理工大学java实验.docx_第6页
第6页 / 共58页
太原理工大学java实验.docx_第7页
第7页 / 共58页
太原理工大学java实验.docx_第8页
第8页 / 共58页
太原理工大学java实验.docx_第9页
第9页 / 共58页
太原理工大学java实验.docx_第10页
第10页 / 共58页
太原理工大学java实验.docx_第11页
第11页 / 共58页
太原理工大学java实验.docx_第12页
第12页 / 共58页
太原理工大学java实验.docx_第13页
第13页 / 共58页
太原理工大学java实验.docx_第14页
第14页 / 共58页
太原理工大学java实验.docx_第15页
第15页 / 共58页
太原理工大学java实验.docx_第16页
第16页 / 共58页
太原理工大学java实验.docx_第17页
第17页 / 共58页
太原理工大学java实验.docx_第18页
第18页 / 共58页
太原理工大学java实验.docx_第19页
第19页 / 共58页
太原理工大学java实验.docx_第20页
第20页 / 共58页
亲,该文档总共58页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

太原理工大学java实验.docx

《太原理工大学java实验.docx》由会员分享,可在线阅读,更多相关《太原理工大学java实验.docx(58页珍藏版)》请在冰点文库上搜索。

太原理工大学java实验.docx

太原理工大学java实验

 

本科实验报告

 

课程名称:

JAVA语言程序设计

实验项目:

基础编程

实验地点:

软件楼

专业班级:

软件班学号:

学生姓名:

指导教师:

2014年1月5日

 

实验1Java语言基础

1.实验目的

(1)通过实验,掌握Java语言程序设计的基本方法。

(2)学会Java语言中标示符的命名、运算符和表达式的应用。

(3)熟练地掌握Java程序流程控制语句的应用。

2.主要仪器设备

笔记本电脑HP6460b,win7,eclipse

3.实验内容

(1)编写应用程序,计算100(含100)以内所有偶数的和。

packagecom.test11;

publicclassTest11{//计算100以内所有偶数的和

publicstaticvoidmain(String[]args){

intsum=0;

for(inti=2;i<=100;i+=2){

sum+=i;

}

System.out.println("100(包括100)以内所有的偶数之和sum="+sum);

}

}

运行结果:

(2)“水仙花数”是指一个3位数,其个位、十位、百位上的数字的立方和等于该数本身,例如371=33+73+13,因此371是一个水仙花数。

编写程序,求所有的水仙花数。

packagecom.test12;

publicclassTest12{

publicstaticvoidmain(String[]args){

System.out.println("所有3位数中的水仙花数为:

");

for(inti=100;i<1000;i++){

inta=i/100;

intb=i/10%10;

intc=i%100%10;

if(a*a*a+b*b*b+c*c*c==i)

System.out.println(i);

}

}

}

运行结果:

(3)编写一个程序,求1-100间的素数。

packagecom.test13;

publicclassTest13{

publicstaticvoidmain(String[]args){

booleanf;

System.out.println("1~100之间的素数是:

");

for(inti=2;i<=100;i++){

f=true;

for(intj=2;j

if(i%j==0){

f=false;

break;

}

}

if(f){

System.out.print(i+"");

}

}

}

}

运行结果:

(4)有一函数:

x(x<1)

Y=3x-2(1≤x<10)

4x(x≥10)

写一程序,给定x值,输出y值。

packagecom.test14;

importjava.util.Scanner;

publicclassTest14{

publicstaticvoidmain(String[]arges){

System.out.print("请输入一个x的值:

");

Scannerin=newScanner(System.in);

DoubleY,x=in.nextDouble();

if(x<1){

System.out.println("Y="+x);

}

elseif(x>=10){

Y=4*x;

System.out.println("Y="+Y);

}

else{

Y=3*x-2;

System.out.println("Y="+Y);

}

}

}

运行结果:

(5)使用for循环语句,编写程序输出以下图案。

☆☆☆

☆☆☆☆☆

☆☆☆☆☆☆☆

☆☆☆☆☆

☆☆☆

packageaddsum;

publicclassquestion5{

publicstaticvoidmain(Stringargs[]){

for(intr=1;r<=4;r++)

{for(intspace=4-r;space>0;space--)

System.out.print(""+""+"");

for(intstar=1;star<=2*r-1;star++)

System.out.print('☆');

System.out.print('\n');

}

for(intr=3;r>=1;r--)

{for(intspace=4-r;space>0;space--)

System.out.print(""+""+"");

for(intstar=1;star<=2*r-1;star++)

System.out.print('☆');

System.out.print('\n');

}

}

}

运行结果:

(6)编写程序,输出从公元1900年到2100年所有闰年的年号,每输出5个年号换一行。

判断年是否为闰年的条件是:

①若年号可以被4整除,而不能被100整除,则是闰年;②若年号可以被400整除,也是闰年。

packagecom.test15;

publicclassTest16{

publicstaticvoidmain(String[]args){

for(inti=1900;i<=2010;i++){

intn=0;

if((i%4==0)&&(i%100!

=0)||(i%400==0)){

n++;

System.out.println(i+"是闰年");

if(n%5==0){

System.out.println("\n");

}

}

}

}

}

运行结果:

4.讨论、心得

试验中遇到的问题及体会在实验过程中,整体都比较完整,基本没遇到什么太大调试问题,算法设计也比较清楚,结果相对比较满意。

体会:

经过实验使我对本章的知识有了更深一步的理解,也学会了将C语言运用到java语言中的学习方法,对知识做了进一步的巩固,同时也发现各种语言之间总有相同的模块,这也使我对以后各程序设计语言及各专业课的学习奠定基础,创造了条件

 

实验2数组和字符串编程

1.实验目的

(1)通过实验,掌握Java语言中数组、字符串程序设计的基本方法。

(2)较熟练地掌握Java程序数组的应用、字符串处理操作的方法应用。

2.实验内容

(1)编写一个程序,在控制台输入10个数,按大小顺序输出。

packagecom.testTwo;

importjava.util.Scanner;

publicclassTestTwo0{

publicstaticvoidmain(String[]args){

int[]x=newint[10];

System.out.print("请输入十个整数:

");

Scannersc=newScanner(System.in);

for(inti=0;i<10;i++){

x[i]=sc.nextInt();

}

sort(x);

}

publicstaticvoidsort(int[]x){

//TODOAuto-generatedmethodstub

inttemp;

for(inti=0;i<10;i++){

for(intj=i+1;j<10;j++){

if(x[i]

temp=x[i];

x[i]=x[j];

x[j]=temp;

}

}

}

for(inti=0;i<10;i++){

System.out.print(x[i]+",");

}

}

}

运行结果:

(2)求一个3*3矩阵对角线元素之和。

packagecom.testTwo;

publicclassTestTwo2{

publicstaticvoidmain(String[]args){

int[][]nums={{1,2,3},{4,5,6},{7,8,9}};

intsum=0;

for(inti=0;i<3;i++){

for(intj=0;j<3;j++){

if(i==j||i+j==2){

sum+=nums[i][j];

}

}

}

System.out.println("3*3矩阵对角线元素之和sum="+sum);

}

}

运行结果:

(3)输入一段字符串,统计其中有多少个单词。

(单词用空格隔开)

packagecom.testTwo;

importjava.io.BufferedReader;

importjava.io.IOException;

importjava.io.InputStreamReader;

publicclassTestTwo3{

publicstaticvoidmain(Stringargs[])throwsIOException{

intnum=1;

Strings;

System.out.print("请输入一段字符串:

\n");

BufferedReaderbuf=newBufferedReader(

newInputStreamReader(System.in));

s=buf.readLine();

for(inti=0;i

if(s.charAt(i)==''){

num++;

}

}

System.out.println("该字符串有"+num+"个单词");

}

}

运行结果:

3.讨论、心得

通过实验,掌握Java语言中数组、字符串程序设计的基本方法,较熟练地掌握Java程序数组的应用、字符串处理操作的方法应用,学到了很多知识,加深了对书本上知识的理解。

实验3Java面向对象程序设计

1.实验目的

掌握Java面向对象程序设计中类、继承、包和接口的概念与应用,能熟练应用方法、类、成员变量等元素。

2.实验内容

(1)创建一个复数类complex,以复数进行数学运算、复数具有如下格式:

RealPart+ImaginaryPart*I,其中,I为-1的平方根。

要求如下:

1 利用浮点变量表示此类的私有数据。

提供两个构造方法,一个用于此类声明的对象的初始化;一个为默认的无参构造方法。

2 提供两复数加、减、乘的运算方法。

3 按格式(a,b)打印复数。

其中a为实部,b为虚部。

packageshiyan3;

importjava.util.Scanner;

publicclassquestion1{

publicstaticvoidmain(String[]args){

Complexa=newComplex(3,5);

Complexb=newComplex(7,2);

System.out.println(a.toString()+"和"+b.toString()+"相加的结果为"+plexAdd(b).toString());

System.out.println(a.toString()+"差"+b.toString()+"相减的结果为"+plexJian(b).toString());

}

}

classComplex{

intrealPart;

intimaginPart;

publicComplex(){

realPart=0;

imaginPart=0;}

publicComplex(intr,inti){

realPart=r;

imaginPart=i;}

publicComplexcomplexAdd(Complexb){

returnnewComplex(realPart+b.realPart,imaginPart+b.imaginPart);}

publicComplexcomplexJian(Complexb){

ReturnnewComplex(realPart-b.realPart,imaginPart-b.imaginPart);}

publicStringtoString(){

Stringsr="("+realPart+","+imaginPart+")";

returnsr;}

}

结果:

(2)创建银行账号Account类,实现存款(balance)的存(deposit)、取(withdraw)和查询(getbalance)等功能。

2.packageshiyan3;

importjava.util.Scanner;

publicclassquestion2{

publicstaticvoidmain(String[]args){

doublebalance=0;

doubledeposit=0;

doublewithdraw=0;

for(;;){

System.out.println("请输入数字:

\t1.存钱\t2.取钱\t3.查询余额\n");

Scannerinput=newScanner(System.in);

Stringnum=input.next();

doubles1=0,s2=0;

if(num.equals("1")){

System.out.println("输入存入金额:

");

deposit=input.nextDouble();

System.out.println("存钱数目为:

"+deposit);

s1+=deposit;

}

if(num.equals("2")){

System.out.println("输入取钱金额:

");

withdraw=input.nextDouble();

System.out.println("取走金额为:

"+withdraw);

s2+=withdraw;

}

if(true|num.equals("3")){

balance+=s1-s2;

System.out.println("账户余额为:

"+balance);

}

}

}

}

结果:

 

(3)编程定义一个接口,实现三个数中求最小值和最大值的方法,并将程序存放在mymaths包中。

3.packageshiyan3;

publicclassquestion3{

publicIntegermaxNum(inta,intb){

if(a>b){

returna;

}else{

returnb;

}

}

publicIntegerminNum(inta,intb){

if(a>b){

returnb;

}else{

returna;

}

}

publicstaticvoidmain(String[]args){

inta=6,b=2,c=10;

question3s=newquestion3();

inttemp=s.maxNum(a,b);

inttemp1=s.maxNum(temp,c);

System.out.println("TheMaxNumis"+temp1);

inttemp2=s.minNum(a,b);

inttemp3=s.minNum(temp2,c);

System.out.println("TheMinNumis"+temp3);

}

}

结果:

(4)编程实现以下简单超市管理,具体要求如下:

1 实现描述超市的类Suppermacket类,具有货架属性,记录系统中现有商品,定义盘点商品的函数check(盘点各类商品的数量,并输出盘点结果),查询商品的函数query,并显示查询结果;

2 定义商品类Goods,具有商品名称Name,商品价格Price,商品产地Producer等属性,操作Sale(销售商品,余额不足时给予提示)、Add(商品上架操作)和ShowMe(显示商品信息)。

3 main函数,测试以上所要求的各种功能,即可以根据菜单命令增加、删除、查询商品、盘点商品,以及商品销售和商品上架的操作

提示:

①超市货架可以使用商品数组,数组大小100表明存放100个商品。

②注意实现商品查询的多态性,要求可以根据商品的名称或产地或价格查询商品的数量。

importjava.io.*;

importjava.util.Scanner;

publicclassMain{

staticStringname;

staticfloatprice;

staticintnum;

staticStringproducer;

staticSupermarktmarket=newSupermarkt();

publicstaticvoidmain(String[]args)throwsIOException{

inti=0;

while(true){

market.ShowMenu();

i=Integer.parseInt(Getline());

switch(i){

case1:

Add();

break;

case2:

Del();

break;

case3:

Showgoods();

break;

case4:

Query();

break;

case5:

System.out.print("成功退出系统");

return;

default:

System.out.println("输入错误,请重新输入!

");

break;

}

}

}

publicstaticvoidQuery(){

System.out.println("**查询商品**");

System.out.print("商品名:

");

name=Getline();

if(!

market.Query(name)){

System.out.print("没有该商品");

}

}

publicstaticvoidShowgoods(){

System.out.println("**显示所有商品**");

if(!

market.Showgoods()){

System.out.println("没有任何商品");

}

}

publicstaticvoidDel(){

System.out.println("**删除商品**");

System.out.print("商品名称:

");

name=Getline();

if(market.Del(name)){

System.out.println("删除商品->"+name+"成功!

");

}

else{

System.out.println("该商品不存在");

}

}

publicstaticvoidAdd(){

System.out.println("**增加商品**");

System.out.print("商品名称:

");

name=Getline();

System.out.print("商品价格:

");

price=Float.parseFloat(Getline());

System.out.print("商品数量:

");

num=Integer.parseInt(Getline());

System.out.print("商品产地:

");

producer=Getline();

if(market.Add(name,price,num,producer)){

System.out.println("增加商品->"+name+"成功!

");

}else{

System.out.println("存在相同商品,增加失败!

");

}

}

publicstaticStringGetline(){

Scannerscan=newScanner(System.in);

Stringstr=scan.nextLine();

returnstr.trim();

}

}

Goods

publicclassGoods{

privateStringname;

privatefloatprice;

privateintnum;

privateStringproducer;

publicGoods(Stringname,floatprice,intnum,Stringproducer){

this.name=name;

this.price=price;

this.num=num;

this.producer=producer;

}

publicStringGetName(){

returnthis.name;

}

publicfloatGetPrice(){

returnthis.price;

}

publicintGetNum(){

returnnum;

}

publicStringGetProducer(){

returnthis.producer;

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2