java带参练习

本文介绍了五个Java编程实例,包括根据月份判断季节、计算a的b次幂、用Leibniz公式近似求π、打印星形图形以及寻找数组中最大值的方法。此外,还展示了实现课程管理类Course,包括添加、删除、查找学生和获取选课信息等功能。
摘要由CSDN通过智能技术生成

1.输入月份,输出季节

package TextClass;

public class Season {
	public String Season(int num) {
		String s="春";
		switch(num) {
		case 1:
		case 2:
		case 3:
			s="春天";
			break;
		case 4:
		case 5:
		case 6:
			s="夏天";
			break;
		case 7:
		case 8:
		case 9:
			s="秋天";
			break;
		case 10:
		case 11:
		case 12:
			s="冬天";
			break;
		}
		return s;
	}

}

package TextClass;

public class Text1 {
	public static void main(String[] ages) {
		Season sea=new Season();
		String month=sea.Season(12);
		System.out.print("月份为:"+month);
	}

}

 2.计算a的b次幂(b为整数,可正可负可0)

package TextClass;

public class MiMath {
	public void mimath(int a,int b) {
	if(b>0) {
		System.out.println((int)Math.pow(a, b)); 
	
	}else if(b==0) {
		System.out.println("1");
	}else {
		System.out.println("1/"+(int)Math.pow(a, -b));
	}
	}

}


package TextClass;

public class Text2 {
	public static void main(String[] ages) {
		MiMath num=new MiMath();
		num.mimath(3, -2);
	}

}

 3.近似求π   i[1,n]   1/2*i-1 i为奇数就为正,否则就是负值

package TextClass;

public class Approximate {
	
	public void app(int a) {
		double num=0;
		for(int i=0;i<=a;i++) {
			if(i==0) {
				num++;
			}else if(i%2==1) {
				num=num-1.0/(2*i+1);
			}else {
				num=num+1.0/(2*i+1);
			}
		}
		System.out.println(4*num);
	}
}


package TextClass;

public class Text3 {
	public static void main(String[] ages) {
		Approximate appma=new Approximate();
		appma.app(6);
	}

}

 

4.根据行数,输出图形

 

​
package TextClass;

public class Graph {
	public void show(int n) {
		for(int k=0;k<n;k++) {
			for(int b=n-k;b>0;b--) {
				System.out.print(" ");
			}
		
		
			for(int j=0;j<=2*k;j++) {
				System.out.print("*");
			}
			System.out.println();
		
	}
	}
}

​
package TextClass;

public class Text4 {
	public static void main(String[] ages) {
		Graph gp=new Graph();
		gp.show(5);
	}

}

5.求一组序列中的最大值(使用数组和可变长度的参数分别实现)

 

package TextClass;

public class Max {
	int[] sum=new int[20];
	int max=0;
	
	public void shuzu(int...a) {
		for(int i=0;i<a.length;i++) {
			sum[i]=a[i];
		}
	}
	
	public void max() {
		for(int j=0;j<sum.length;j++) {
			if(sum[j]>max) {
				max=sum[j];
			}
			
		}
		System.out.println("最大值为:"+max);
	}
	

}


package TextClass;

public class Text5 {
	public static void main(String[] ages) {
		Max ma=new Max();
		ma.shuzu(4,5,87,45,65);
		ma.max();
	}

}

6.

课程Course:

属性:课程名称 学生名称列表 String[]

方法:String getCourse():获取课程名称

boolean addStudent(String stuName):添加学生

dropStudent(String stuName):删除学生

searchStudent(String stuName):查找学生

getStuNums():获取选课学生人数

String[] getStus():获取选课学生列表

package TextClass;

public class Course {
	
//	String getCourse():获取课程名称 
//	boolean addStudent(String stuName):添加学生 
//	dropStudent(String stuName):删除学生
//	searchStudent(String stuName):查找学生 
//	getStuNums():获取选课学生人数 
//	String[] getStus():获取选课学生列表
	
	String name;
	String[] stuName;
	//获取课程名称
	public String getCourse() {
		
		return name;
	}
	//添加学生
	public boolean addStudent(String stu) {

		if(stuName==null) {
			stuName=new String[1];
			stuName[0]=stu;
			
		}else {
			//扩容
			stuName=resize(stuName.length+1);
			//存储数据
			stuName[stuName.length-1]=stu;
		}
		return true;
	}
	//扩容
	public String[] resize(int len) {
		String[] arr=new String[len];
		int min=stuName.length<len?stuName.length:len;
		for(int i=0;i<min;i++) {
			arr[i]=stuName[i];//将旧的数据转移到新的数组里面
		}
		return arr;
	}
	//删除学生
	public boolean dropStudent(String stu) {
		boolean f=false;
		for(int i=0;i<stuName.length;i++) {
			if(stu.equals(stuName[i])) {
				f=true;
				//数组向前移动
				for(int j=i+1;j<stuName.length;j++) {
					stuName[j-1]=stuName[j];
				}
				//重置数组大小
				stuName=resize(stuName.length-1);
				break;
			}
			
		}
		
		return f;
	}
	//查找学生
	public boolean searchStudent(String stu) {
		boolean f=false;//ture找到,false没找到
		for(int i=0;i<stuName.length;i++) {
			if(stu.equals(stuName[i])) {
				f=true;
			}
		}
		return f;
	}
	//获取选课人数
	public int  getStuNums() {
		return stuName.length;
	}
	//获取选课人数学生列表
	public String[] getStus() {
		return stuName;
	}

}



package TextClass;

public class Text7 {
	public static void main(String[] args) {
		Course cou=new Course();
		cou.name="计算机";
		cou.addStudent("张三");//输入学生姓名
		cou.addStudent("李四");
		String nm=cou.getCourse();
		System.out.println(nm);
		
		//cou.dropStudent("李四");//删除学生姓名
		boolean f=cou.searchStudent("李四");//查找学生姓名
		System.out.println("查找:"+f);
		int a=cou.getStuNums();//查找选课人数
		System.out.println("选课人数有:"+a);
		String[] stu=cou.getStus();//获取选课生列表
		for (String string : stu) {
			System.out.println(string);
		}
	}

}

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值