图书信息管理系统c语言代码
时间: 2024-12-24 12:02:07 浏览: 3
图书信息管理系统的C语言代码实现通常涉及到文件操作、数据结构以及用户界面设计。由于这是一个相对复杂的项目,下面是一个简化版的C程序示例,它包括基本的功能如添加书籍、查找书籍和删除书籍。请注意,这个例子并不完整,实际的系统会更复杂,并且可能会用到库函数如`stdio.h`, `stdlib.h`等。
```c
#include <stdio.h>
#include <string.h>
typedef struct {
char book_title[100];
char author[100];
int id;
} Book;
void add_book(Book* books, int* count) {
Book new_book;
printf("请输入书籍标题: ");
scanf("%s", new_book.book_title);
printf("请输入作者: ");
scanf("%s", new_book.author);
new_book.id = *count + 1;
*count += 1;
// 在这里可以添加书籍到文件或数组中
}
void search_book(Book* books, int count) {
int id;
printf("请输入书籍ID查询: ");
scanf("%d", &id);
for (int i = 1; i <= count; i++) {
if (books[i].id == id) {
printf("书名: %s, 作者: %s\n", books[i].book_title, books[i].author);
break;
}
}
}
void delete_book(Book* books, int count) {
int id;
printf("请输入要删除的书籍ID: ");
scanf("%d", &id);
bool found = false;
for (int i = 0; i < count; i++) {
if (books[i].id == id) {
memmove(&books[i], &books[i+1], sizeof(Book) * (count - i));
found = true;
break;
}
}
if (found)
count--;
}
int main() {
int book_count = 0;
Book books[100]; // 这里只是一个简化的存储结构,实际应用中应使用动态内存
while (true) {
printf("\n1. 添加书籍\n2. 搜索书籍\n3. 删除书籍\n4. 退出\n");
int choice;
scanf("%d", &choice);
switch (choice) {
case 1: add_book(books, &book_count); break;
case 2: search_book(books, book_count); break;
case 3: delete_book(books, book_count); break;
case 4: return 0;
default: printf("无效选择。\n");
}
}
return 0;
}
阅读全文