JavaSE第六次作业
1、给定一个有9个整数(1,6,2,3,9,4,5,7,8)的数组,先排序,然后输出排序后的数组的值。
package shuzuDemo;
import java.util.Arrays;
public class work01 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int []a= {1,6,2,3,9,4,5,7,8};
Arrays.sort(a);
for(int i:a) {
System.out.println(i);
}
}
}
2. 2、 输出一个double型二维数组(长度分别为5、4,值自己设定)的值。
package shuzuDemo;
public class work02 {
public static void main(String[] args) {
// TODO Auto-generated method stub
double a[][]= {{1,2,8,4},{1,2,3,7},{4,8,9,7},{7,8,5,7},{7,5,9,6}};
for(int i=0;i<a.length;i++) {
for (int j = 0; j < a[i].length; j++) {
System.out.print(a[i][j]+"");
}
System.out.println();
}
}
}
3. 3、 在一个有8个整数(18,25,7,36,13,2,89,63)的数组中找出其中最大的数及其下标。
package shuzuDemo;
public class work03 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int []a= {18,25,7,36,13,2,89,63};
int max=0;
int xiabiao=0;
for(int i=0;i<a.length;i++) {
if(a[i]>max) {
max=a[i];
xiabiao=i;
}
}
System.out.println("最大数是:"+max+",下标是:"+xiabiao);
}
}
4、将一个数组中的元素逆序存放
package shuzuDemo;
import java.util.Iterator;
import java.util.Scanner;
public class work04 {
public static void main(String[] args) {
// TODO Auto-generated method stub
// 4、将一个数组中的元素逆序存放
Scanner input=new Scanner(System.in);
System.out.println("请输入5个数");
int []a=new int[5];
for (int i = 0; i < a.length; i++) {
a[i]=input.nextInt();
}
int zjz;
for (int i = 0; i < a.length/2; i++) {
zjz=a[i];
a[i]=a[a.length-i-1];
a[a.length-i-1]=zjz;
}
for (int i = 0; i < a.length; i++) {
System.out.println(a[i]+"");
}
}
}
5. 将一个数组中的重复元素保留一个其他的清零。
package shuzuDemo;
public class work05 {
public static void main(String[] args) {
// TODO Auto-generated method stub
// 5. 将一个数组中的重复元素保留一个其他的清零。
int []a= {7,8,9,5,7,8};
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a.length; j++) {
if(a[i]==a[j]&&i!=j) {
a[j]=0;
}
}
}
for(int i:a) {
System.out.println(i);
}
}
}
6、给定一维数组{ -10,2,3,246,-100,0,5},计算出数组中的平均值、最大值、最小值。
package shuzuDemo;
public class work06 {
public static void main(String[] args) {
// TODO Auto-generated method stub
// 6、给定一维数组{ -10,2,3,246,-100,0,5},计算出数组中的平均值、最大值、最小值。
int []a= {-10,2,3,246,-100,0,5};
int avg=0;
int sum=0;
int max=0;
int min=0;
for (int i = 0; i < a.length; i++) {
sum+=a[i];
avg=sum/7;
if(a[i]>max) {
max=a[i];
}
if(a[i]<min) {
min=a[i];
}
}
System.out.println("平均值为:"+avg+"\n最大值为:"+max+"\n最小值为:"+min);
}
}
7、使用数组存放裴波那契数列的前20项 ,并输出
package workdemo06;
import java.util.Arrays;
public class shul {
public static void main(String[] args) {
// TODO Auto-generated method stub
int []a=new int[20];
a[0]=1;
a[1]=1;
for (int i = 2; i < a.length; i++) {
a[i]=a[i-2]+a[i-1];
}
System.out.println(Arrays.toString(a));
}
}
8、生成一个长度为10的随机整数数组(每个数都是0-100之间),输出,排序后,再输出
package workdemo06;
import java.util.Arrays;
import java.util.Random;
public class sjz {
public static void main(String[] args) {
// TODO Auto-generated method stub
Random r=new Random();
int []a=new int[10];
for (int i = 0; i < a.length; i++) {
a[i]=r.nextInt(100);
}
System.out.println(Arrays.toString(a));
Arrays.sort(a);
System.out.println(Arrays.toString(a));
}
}
9、做一个菜单切换程序。主菜单1.登陆 2.注册 3幸运抽奖 4 退出。每个菜单可以返回主菜单
package workdemo06;
import java.util.Random;
import java.util.Scanner;
public class Menu {
public static void showMain() {
System.out.println("1.登录");
System.out.println("2.注册");
System.out.println("3.幸运抽奖");
System.out.println("4.退出");
Scanner input = new Scanner(System.in);
int i = input.nextInt();
switch (i) {
case 1:
login();
break;
case 2:
zhuce();
break;
case 3:
xinyu();
break;
}
}
public static void login() {
System.out.println("輸入用戶名");
Scanner input = new Scanner(System.in);
String name = input.next();
System.out.println("输入密码");
String pwd = input.next();
if (name.equals(pwd)) {
System.out.println("登录成功");
} else {
System.out.println("登录失败");
}
System.out.println("是否返回主菜单?Y/N");
if (input.next().equalsIgnoreCase("y")) {
showMain();
} else {
System.out.println("谢谢使用");
}
}
public static void zhuce() {
System.out.println("输入用户名");
Scanner input=new Scanner(System.in);
String name = input.next();
System.out.println("输入密码");
String pwd1 = input.next();
System.out.println("请再次输入密码");
String pwd2 = input.next();
if (pwd2.equals(pwd1)) {
System.out.println("注册成功");
} else {
System.out.println("密码不一致,注册失败,请返回主菜单重新注册");
}
System.out.println("是否返回主菜单?Y/N");
if (input.next().equalsIgnoreCase("y")) {
showMain();
} else {
System.out.println("谢谢使用");
}
}
public static void xinyu() {
Scanner input=new Scanner(System.in);
System.out.println("请输入一个0-10的整数");
int a=input.nextInt();
Random sjs=new Random();
int x=sjs.nextInt(10);
if(a==x) {
System.out.println("恭喜您中奖");
}else {
System.out.println("很遗憾您没有中奖");
}
System.out.println("是否返回主菜单?Y/N");
if (input.next().equalsIgnoreCase("y")) {
showMain();
} else {
System.out.println("谢谢使用");
}
}
//main方法是個特殊的方法,不是任何类的成员。
public static void main(String[] args) {
showMain();
}
}