本任务要求,使用所学知识编写一个基于控制台的购书系统,实现购书功能。 输出所有图书的信息:包括每本书的编号、书名、单价、库存。 顾客购买书时,根据提示输入图书编号来选购需要的书,并根据提示输入购买书的的数量。 购买完毕后输出顾客的订单信息,包括:订单号、订单明细、订单总额。用java
时间: 2024-03-07 21:46:28 浏览: 159
好的,以下是一个简单的 Java 代码示例,实现您所需的购书系统:
```java
import java.util.Scanner;
public class Bookstore {
static class Book {
int id; // 图书编号
String name; // 书名
double price; // 单价
int stock; // 库存
}
static class Order {
int id; // 订单号
String detail; // 订单明细
double total; // 订单总额
}
public static void main(String[] args) {
// 创建图书库存数组
Book[] books = new Book[3];
books[0] = new Book();
books[0].id = 1;
books[0].name = "C++ Primer";
books[0].price = 78.5;
books[0].stock = 50;
books[1] = new Book();
books[1].id = 2;
books[1].name = "Effective C++";
books[1].price = 58.8;
books[1].stock = 30;
books[2] = new Book();
books[2].id = 3;
books[2].name = "Thinking in Java";
books[2].price = 68.0;
books[2].stock = 40;
// 输出所有图书信息
System.out.println("图书编号\t书名\t\t单价\t库存");
for (int i = 0; i < 3; i++) {
System.out.println(books[i].id + "\t\t" + books[i].name + "\t" + books[i].price + "\t" + books[i].stock);
}
// 提示顾客选择购买的书籍和数量
Scanner scanner = new Scanner(System.in);
System.out.print("请选择要购买的书籍编号:");
int book_id = scanner.nextInt();
System.out.print("请输入购买数量:");
int book_num = scanner.nextInt();
// 计算订单总额,并输出订单信息
Order order = new Order();
order.id = 1; // 假设订单号为1
order.detail = books[book_id-1].name + " × " + book_num;
order.total = books[book_id-1].price * book_num;
System.out.println("订单号:" + order.id);
System.out.println("订单明细:" + order.detail);
System.out.println("订单总额:" + order.total);
}
}
```
这个购书系统使用了两个嵌套的类,一个是 Book 类,用来保存每本书的信息,另一个是 Order 类,用来保存订单信息。在主函数中,我们先创建一个图书库存数组来保存所有图书的信息,然后循环输出每本书的信息。接着提示顾客选择需要购买的书籍和购买数量,并计算订单总额。最后输出订单信息。
阅读全文