用c语言写一个图书管理系统
时间: 2023-11-24 22:06:35 浏览: 34
好的,这是一个比较大的项目,我可以给你提供一个简单的框架,你可以根据需求进行修改和完善。
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_BOOKS 100 // 最大书籍数量
#define MAX_NAME 50 // 书名的最大长度
#define MAX_AUTHOR 20 // 作者名的最大长度
// 书籍结构体
typedef struct {
char name[MAX_NAME];
char author[MAX_AUTHOR];
int id;
int quantity;
} Book;
// 全局变量
Book books[MAX_BOOKS]; // 存储书籍信息的数组
int num_books = 0; // 当前书籍数量
// 函数声明
void add_book();
void remove_book();
void search_book();
void display_books();
// 主函数
int main() {
int choice;
while (1) {
printf("\n图书管理系统\n");
printf("1. 添加书籍\n");
printf("2. 删除书籍\n");
printf("3. 查找书籍\n");
printf("4. 显示所有书籍\n");
printf("5. 退出\n");
printf("请选择操作: ");
scanf("%d", &choice);
switch (choice) {
case 1:
add_book();
break;
case 2:
remove_book();
break;
case 3:
search_book();
break;
case 4:
display_books();
break;
case 5:
exit(0); // 退出程序
default:
printf("无效的选择,请重新输入!\n");
break;
}
}
return 0;
}
// 添加书籍
void add_book() {
if (num_books >= MAX_BOOKS) {
printf("已达到最大书籍数量!\n");
return;
}
Book book;
printf("请输入书名: ");
scanf("%s", book.name);
printf("请输入作者名: ");
scanf("%s", book.author);
printf("请输入书籍编号: ");
scanf("%d", &book.id);
printf("请输入书籍数量: ");
scanf("%d", &book.quantity);
books[num_books++] = book;
printf("书籍添加成功!\n");
}
// 删除书籍
void remove_book() {
int id, i, j;
printf("请输入要删除的书籍编号: ");
scanf("%d", &id);
for (i = 0; i < num_books; i++) {
if (books[i].id == id) {
for (j = i; j < num_books - 1; j++) {
books[j] = books[j + 1];
}
num_books--;
printf("书籍删除成功!\n");
return;
}
}
printf("未找到该书籍!\n");
}
// 查找书籍
void search_book() {
int id, i;
printf("请输入要查找的书籍编号: ");
scanf("%d", &id);
for (i = 0; i < num_books; i++) {
if (books[i].id == id) {
printf("书名: %s\n", books[i].name);
printf("作者: %s\n", books[i].author);
printf("数量: %d\n", books[i].quantity);
return;
}
}
printf("未找到该书籍!\n");
}
// 显示所有书籍
void display_books() {
int i;
printf("书籍列表:\n");
for (i = 0; i < num_books; i++) {
printf("书名: %s\n", books[i].name);
printf("作者: %s\n", books[i].author);
printf("编号: %d\n", books[i].id);
printf("数量: %d\n", books[i].quantity);
printf("\n");
}
}
```
上面的代码实现了一个简单的图书管理系统,包括添加书籍、删除书籍、查找书籍、显示所有书籍等功能。你可以根据自己的需求进行修改和完善。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![c](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://img-home.csdnimg.cn/images/20210720083646.png)