第六次作业
// 1、给定一个有9个整数(1,6,2,3,9,4,5,7,8)的数组,先排序,然后输出排序后的数组的值。
package dsv;import java.util.Scanner; public class sdsssd { public static void main(String[] args) { int a[]= {1,6,2,3,9,4,5,7,8}; for(int i = 1;i<a.length;i++) { for(int j = i-1;j>=0;j-- ) { if(a[j+1]<a[j]) { int t = a[j]; a[j] = a[j+1]; a[j+1] = t; } else { break; } } } for(int i =0; i<a.length;i++) { System.out.print(a[i]); } }}
// 2、 输出一个double型二维数组(长度分别为5、4,值自己设定)的值。
package dsv; import java.util.Scanner; public class sdsssd { public static void main(String[] args) {
Scanner input = new Scanner(System.in);
double a[][]= new double[5][4];
for(int i =0;i<5;i++) {
for(int j =0;j<4;j++) {
System.out.println("a["+i+"]["+j+"]:");
a[i][j] = input.nextDouble();
}
}
for(int i =0;i<5;i++) {
for(int j =0;j<4;j++) {
System.out.print(a[i][j]+"\t");
}
System.out.println("");
} }}
// 3、 在一个有8个整数(18,25,7,36,13,2,89,63)的数组中找出其中最大的数及其下标。
package dsv; import java.util.Scanner; public class sdsssd { public static void main(String[] args) {
int a[] = {18,25,7,36,13,2,89,63};
int temp =0;
for(int i =1;i<a.length;i++) {
if(a[temp]<a[i]) {
temp =i;
}
}
System.out.println("最大的数为:"+a[temp]+"下标为:"+temp); }}
// 4、将一个数组中的元素逆序存放
package dsv; import java.util.Scanner; public class sdsssd { public static void main(String[] args) {
int a[] = {18,25,7,36,13,2,89,63};
int temp;
for(int i = 0;i<a.length;i++) {
System.out.print(a[i]+"\t");
}
System.out.println("");
for(int i =0;i<a.length/2;i++) {
temp = a[i];
a[i]=a[a.length-1-i];
a[a.length-1-i] = temp;
}
for(int i = 0;i<a.length;i++) {
System.out.print(a[i]+"\t");
} }}
// 5. 将一个数组中的重复元素保留一个其他的清零。
package dsv; import java.util.Scanner; public class sdsssd { public static void main(String[] args) {
int a[] = {1,23,4,7,34,5,2,5,1,7,3,23};
for(int i = 0;i<a.length;i++) {
System.out.print(a[i]+"\t");
}
System.out.println("");
for(int i =0;i<a.length-1;i++) {
for(int j =i+1;j<a.length;j++) {
if(a[i]==a[j]) {
for(int h = j;h<a.length-1;h++) {
a[h]=a[h+1];
if(h+1==a.length-1) {
a[h+1] = '\0';
}
}
}
}
}
for(int i = 0;i<a.length;i++) {
System.out.print(a[i]+"\t");
} }}
// 6、给定一维数组{ -10,2,3,246,-100,0,5},计算出数组中的平均值、最大值、最小值。
package dsv; import java.util.Scanner; public class sdsssd { public static void main(String[] args) {
int a[] = {-10,2,3,246,-100,0,5};
Arrays.sort(a);
int sum =0;
for(int i =0;i<a.length;i++) {
sum+=a[i];
}
System.out.println("最大值:"+a[a.length-1]+"最小值:"+a[0]+"平均值:"+sum/a.length); }}
// 7、使用数组存放裴波那契数列的前20项 ,并输出
package dsv; import java.util.Scanner; public class sdsssd { public static void main(String[] args) {
int a[]=new int[20];
a[0] =1;
a[1] =1;
for(int i =2;i<a.length;i++) {
a[i]=a[i-1]+a[i-2];
}
for(int i =0;i<a.length;i++) {
System.out.println(a[i]);
}
}}
// 8、生成一个长度为10的随机整数数组(每个数都是0-100之间),输出,排序后,再输出
package dsv; import java.util.Scanner;
import java.util.Random; public class sdsssd { public static void main(String[] args) {
int a[] = new int[10];
Random ha = new Random();
for(int i =0;i<a.length;i++) {
a[i] = ha.nextInt(101);
}
for(int i =0;i<a.length;i++) {
System.out.print(a[i]+"\t");
}
for(int i =1;i<a.length;i++) {
for(int j =i-1;j>=0;j--) {
if(a[j]>a[j+1]) {
int t = a[j+1];
a[j+1] = a[j];
a[j] = t;
}
else {
break;
}
}
}
System.out.println("");
for(int i =0;i<a.length;i++) {
System.out.print(a[i]+"\t");
} }}
// 9、做一个菜单切换程序。主菜单1.登陆 2.注册 3幸运抽奖 4 退出。每个菜单可以返回主菜单
public class sdsssd { static int admin = 1314520; static String password = "lz520"; public static void menu() { Scanner input = new Scanner(System.in); System.out.println("****************"); System.out.println("*****1.登录*****"); System.out.println("*****2.注册*****"); System.out.println("*****3.幸运抽奖*"); System.out.println("*****4.退出*****"); System.out.println("****************"); int n =input.nextInt(); while(true) { switch(n) { case 1: dengru();break; case 2:zhuce();break; case 3:choujiang();break; default: System.out.println("退出程序成功!!!"); return; } System.out.println("****************"); System.out.println("*****1.登录*****"); System.out.println("*****2.注册*****"); System.out.println("*****3.幸运抽奖*"); System.out.println("*****4.退出*****"); System.out.println("****************"); n =input.nextInt(); }} public static void dengru() { Scanner input = new Scanner(System.in); int a; String b; int n; System.out.println("****1.登录******"); System.out.println("****2.退出登录***"); n =input.nextInt(); while(true) { switch(n) { case 1: System.out.println("输入账号:"); a = input.nextInt(); System.out.println("输入密码:"); b =input.next(); if(a==admin&&b.equals(password)) { System.out.println("登录成功!!!"); } break; case 2: System.out.println("退出登录成功!!!"); return; } System.out.println("****1.登录******"); System.out.println("****2.退出登录***"); n =input.nextInt(); } } public static void zhuce() { Scanner input = new Scanner(System.in); int n; System.out.println("*****1.注册*******"); System.out.println("*****2.退出注册***"); n = input.nextInt(); while(true) { switch(n) { case 1: System.out.println("输入账号:"); admin = input.nextInt(); System.out.println("输入密码:"); password = input.next(); System.out.println("注册成功!!!"); break; case 2: System.out.println("成功退出注册!!!"); return; } System.out.println("*****1.注册*******"); System.out.println("*****2.退出注册***"); n = input.nextInt();} } public static void choujiang() { Scanner input = new Scanner(System.in); Random da = new Random(); int n = da.nextInt(100)+1; System.out.println("*****1.幸运抽奖(1-100)*******"); System.out.println("*****2.退出幸运抽奖***"); n = input.nextInt(); while(true) { switch(n) { case 1: System.out.println("输入号码:"); int num =input.nextInt(); if(n==num) { System.out.println("恭喜你中奖!!!"); } else { System.out.println("没有中奖"); } n = da.nextInt(100)+1; break; case 2: System.out.println("成功退出抽奖!!!"); return; } System.out.println("*****1.幸运抽奖(1-100)*******"); System.out.println("*****2.退出幸运抽奖***"); n = input.nextInt(); } } public static void main(String[] args) { menu(); }}