A用java.写程序显示如下菜单对一个一维数组进行操作:1.insert(插入一个数据)2.delete(删除一个数据)3.sort(排序)4.print(输出表中所数据)0.exit(退出程序)B.用scanf函数输入菜单选择的数字(0-4)对其他输入要提示错误信息,用switch语句控制菜单选择。C.在switch的每个选择分支中添加适当的代码,使程序能够完成要求的操作此时可一次加一个模块这样便于调试。D.插入和删除都要指定位置,所以在建立一个一维数组保存顺序表的数据以外,还要用一个变量来记录当前表中数据的个数。E.编写冒泡排序法
时间: 2024-03-07 11:46:55 浏览: 56
好的,我会尽力回答你的问题。
以下是一个可能的实现,希望可以帮到你。
```java
import java.util.Scanner;
public class Menu {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int[] arr = new int[100]; // 建立一个长度为100的数组
int count = 0; // 记录表中数据的个数
while (true) {
System.out.println("请选择要进行的操作:");
System.out.println("1.插入一个数据");
System.out.println("2.删除一个数据");
System.out.println("3.排序");
System.out.println("4.输出表中所数据");
System.out.println("0.退出程序");
int choice = scanner.nextInt(); // 读取用户输入的数字
switch (choice) {
case 0:
System.out.println("程序已退出。");
return;
case 1:
System.out.println("请输入要插入的数字和位置,用空格隔开:");
int num = scanner.nextInt();
int pos = scanner.nextInt();
if (pos < 1 || pos > count + 1) {
System.out.println("位置不合法!");
} else {
// 在指定位置插入数字
for (int i = count; i >= pos; i--) {
arr[i] = arr[i - 1];
}
arr[pos - 1] = num;
count++;
System.out.println("插入成功!");
}
break;
case 2:
System.out.println("请输入要删除的位置:");
pos = scanner.nextInt();
if (pos < 1 || pos > count) {
System.out.println("位置不合法!");
} else {
// 删除指定位置的数字
for (int i = pos; i < count; i++) {
arr[i - 1] = arr[i];
}
count--;
System.out.println("删除成功!");
}
break;
case 3:
// 冒泡排序
for (int i = 0; i < count - 1; i++) {
for (int j = 0; j < count - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
System.out.println("排序完成!");
break;
case 4:
if (count == 0) {
System.out.println("表中没有数据。");
} else {
System.out.print("表中的数据为:");
for (int i = 0; i < count; i++) {
System.out.print(arr[i] + " ");
}
System.out.println();
}
break;
default:
System.out.println("无效的选择,请重新输入。");
break;
}
}
}
}
```
这个程序实现了一个菜单,用户可以通过输入数字来进行插入、删除、排序和输出操作。程序中使用了一个长度为100的数组来保存表中的数据,另外还有一个变量`count`用来记录当前表中数据的个数。在插入和删除操作中,需要指定位置,所以程序使用了一个`pos`变量来接收用户输入的位置。在排序操作中,程序使用了冒泡排序法,对表中的数据进行排序。
阅读全文