第6次作业
1、给定一个有9个整数(1,6,2,3,9,4,5,7,8)的数组,先排序,然后输出排序后的数组的值。
import java.util.Arrays;
public class www {
public static void main(String[] args) {
// TODO Auto-generated method stub
int a[] = { 1, 6, 2, 3, 9, 4, 5, 7, 8 };
System.out.println("Arrays.sort排序:");
Arrays.sort(a);
for (int i : a) {
System.out.println(i);
}
System.out.println("冒泡排序:");
for (int i = 0; i < a.length - 1; i++) {
for (int j = 0; j < a.length - 1 - i; j++) {
if (a[j] > a[j + 1]) {
int temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
for (int i : a) {
System.out.println(i);
}
}
}
2、 输出一个double型二维数组(长度分别为5、4,值自己设定)的值。
import java.util.Arrays;
public class www {
public static void main(String[] args) {
// TODO Auto-generated method stub
double a[][] = new double[5][4];
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[i].length; j++) {
a[i][j] = i;
}
}
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、 在一个有8个整数(18,25,7,36,13,2,89,63)的数组中找出其中最大的数及其下标。import java.util.Arrays;
public class www {
public static void main(String[] args) {
// TODO Auto-generated method stub
int a[]={18,25,7,36,13,2,89,63};
int max=a[0];
int number=0;
for (int i = 1; i < a.length; i++) {
if (a[i]>max) {
max=a[i];
}
number++;
}
System.out.println("最大值为:"+max);
System.out.println("下标为:"+number);
}
}
4、将一个数组中的元素逆序存放
import java.util.Arrays;
public class www {
public static void main(String[] args) {
// TODO Auto-generated method stub
int a[] = { 12,15,16,18,19 };
int b;
for (int i = 0; i < a.length / 2; i++) {
b = a[i];
a[i] = a[a.length - i - 1];
a[a.length - i - 1] = b;
}
System.out.println("倒序输出数组值为:");
for (int i = 0; i < a.length; i++) {
System.out.println(a[i]);
}
}
5. 将一个数组中的重复元素保留一个其他的清零。
import java.util.Arrays;
public class www {
public static void main(String[] args) {
// TODO Auto-generated method stub
int a[] = { 12,15,16,18,12,13,15 };
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 = 0; i < a.length; i++) {
System.out.println(a[i]);
}
}
}
6、给定一维数组{ -10,2,3,246,-100,0,5},计算出数组中的平均值、最大值、最小值。
import java.util.Arrays;
public class www {
public static void main(String[] args) {
// TODO Auto-generated method stub
int a[] = { -10, 2, 3, 246, -100, 0, 5 };
int max = a[0];
int min = a[0];
double sum = 0;
for (int i = 1; i < a.length; i++) {
if (a[i] > max) {
max = a[i];
}
if (a[i] < min) {
min = a[i];
}
}
for (int i = 0; i < a.length; i++) {
sum += a[i];
}
System.out.println("最大值为:" + max);
System.out.println("最小值为:" + min);
System.out.println("平均值为:" + sum / a.length);
}
}
7、使用数组存放裴波那契数列的前20项 ,并输出
import java.util.Arrays;
public class www {
public static void main(String[] args) {
// TODO Auto-generated method stub
int a = 1, b = 1, c = 0;
int x[] = new int[20];
x[0] = a;
x[1] = b;
for (int i = 1; i <= 18; i++) {
c = a + b;
a = b;
b = c;
x[i + 1] = c;
}
System.out.println("输出为:");
for (int i = 0; i < 20; i++) {
System.out.println(x[i]);
}
}
}
8、生成一个长度为10的随机整数数组(每个数都是0-100之间),输出,排序后,再输出
import java.util.Arrays;
public class www {
public static void main(String[] args) {
// TODO Auto-generated method stub
int a[] = new int[10];
System.out.println("随机生成长度为10的数组:");
for (int i = 0; i < a.length; i++) {
a[i] = (int) (Math.random() * 100);
}
for (int i = 0; i < a.length; i++) {
System.out.println(a[i]);
}
System.out.println("排序后为:");
Arrays.sort(a);
for (int i = 0; i < a.length; i++) {
System.out.println(a[i]);
}
}
}
9、做一个菜单切换程序。主菜单1.登陆 2.注册 3幸运抽奖 4 退出。每个菜单可以返回主菜单
package ctt;
import java.util.Scanner;
public class ctt {
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;
}
}
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 pwd = input.next();
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();
}
}