图书管理系统c语言
时间: 2023-07-03 17:07:22 浏览: 36
图书管理系统是一个比较常见的小型数据库管理系统,可以使用C语言进行编写。下面是一个简单的图书管理系统的C语言代码示例:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_BOOKS 100
typedef struct {
int id; // 书籍编号
char title[50]; // 书名
char author[20]; // 作者
char publisher[20]; // 出版社
float price; // 价格
} Book;
Book books[MAX_BOOKS]; // 图书数组
int count = 0; // 图书数量
// 添加书籍
void add_book() {
if (count >= MAX_BOOKS) {
printf("已达到最大书籍数量,无法添加新书!\n");
return;
}
Book book;
printf("请输入书籍编号:");
scanf("%d", &book.id);
printf("请输入书名:");
scanf("%s", book.title);
printf("请输入作者:");
scanf("%s", book.author);
printf("请输入出版社:");
scanf("%s", book.publisher);
printf("请输入价格:");
scanf("%f", &book.price);
books[count] = book;
count++;
printf("添加书籍成功!\n");
}
// 删除书籍
void delete_book() {
int id;
printf("请输入要删除的书籍编号:");
scanf("%d", &id);
int index = -1;
for (int i = 0; i < count; i++) {
if (books[i].id == id) {
index = i;
break;
}
}
if (index == -1) {
printf("未找到该书籍!\n");
return;
}
for (int i = index; i < count - 1; i++) {
books[i] = books[i + 1];
}
count--;
printf("删除书籍成功!\n");
}
// 查找书籍
void search_book() {
int id;
printf("请输入要查找的书籍编号:");
scanf("%d", &id);
int index = -1;
for (int i = 0; i < count; i++) {
if (books[i].id == id) {
index = i;
break;
}
}
if (index == -1) {
printf("未找到该书籍!\n");
return;
}
Book book = books[index];
printf("书籍编号:%d\n", book.id);
printf("书名:%s\n", book.title);
printf("作者:%s\n", book.author);
printf("出版社:%s\n", book.publisher);
printf("价格:%.2f\n", book.price);
}
// 显示所有书籍
void show_all_books() {
printf("书籍编号\t书名\t\t作者\t\t出版社\t\t价格\n");
for (int i = 0; i < count; i++) {
Book book = books[i];
printf("%d\t\t%s\t\t%s\t\t%s\t\t%.2f\n", book.id, book.title, book.author, book.publisher, book.price);
}
}
int main() {
while (1) {
printf("请选择操作:\n");
printf("1. 添加书籍\n");
printf("2. 删除书籍\n");
printf("3. 查找书籍\n");
printf("4. 显示所有书籍\n");
printf("5. 退出程序\n");
int option;
scanf("%d", &option);
switch (option) {
case 1:
add_book();
break;
case 2:
delete_book();
break;
case 3:
search_book();
break;
case 4:
show_all_books();
break;
case 5:
printf("程序已退出!\n");
return 0;
default:
printf("无效操作!\n");
break;
}
}
return 0;
}
```
这是一个比较简单的示例代码,实际上,可以根据具体需求进行修改和扩展。