为了实现一个简单的图书管理系统,我们需要完成以下功能:
1. 添加图书信息
2. 删除图书信息
3. 修改图书信息
4. 查询图书信息
5. 显示所有图书信息
以下是一个简单的C语言实现:
```c
#include
#include
typedef struct {
char title[50];
char author[50];
int year;
} Book;
void addBook(Book *books, char *title, char *author, int year);
void deleteBook(Book *books, int id);
void updateBook(Book *books, int id, char *title, char *author, int year);
void searchBook(Book *books, char *keyword);
void displayBooks(Book *books);
int main() {
Book books[100];
int i, j;
// 添加图书信息
addBook(books, "书名", "作者", 2020);
addBook(books, "另一本书", "另一个作者", 2019);
// 显示所有图书信息
displayBooks(books);
return 0;
}
void addBook(Book *books, char *title, char *author, int year) {
if (strlen(title) > 50 || strlen(author) > 50 || strlen(year) != 4) {
printf("输入的图书信息不符合要求,请重新输入。n");
return;
}
for (i = 0; i < 100; i++) {
if (strcmp(books[i].title, title) == 0 || strcmp(books[i].author, author) == 0) {
printf("该书已存在,请重新输入。n");
return;
}
}
books[i].title[50] = ' ';
books[i].author[50] = ' ';
books[i].year = year;
}
void deleteBook(Book *books, int id) {
for (i = 0; i < 100; i++) {
if (strcmp(books[i].title, id) == 0 || strcmp(books[i].author, id) == 0) {
- for (j = i; j < i
- 1; j++) {
books[j] = books[j + 1];
}
- books[i
- 1] = books[100];
i--;
j--;
return;
}
}
printf("未找到该书。n");
}
void updateBook(Book *books, int id, char *title, char *author, int year) {
for (i = 0; i < 100; i++) {
if (strcmp(books[i].title, id) == 0 || strcmp(books[i].author, id) == 0) {
books[i].title[50] = title;
books[i].author[50] = author;
books[i].year = year;
return;
}
}
printf("未找到该书。n");
}
void searchBook(Book *books, char *keyword) {
for (i = 0; i < 100; i++) {
if (strcmp(books[i].title, keyword) == 0 || strcmp(books[i].author, keyword) == 0) {
printf("%s: %s by %sn", books[i].title, books[i].author, books[i].year);
return;
}
}
printf("未找到该书。n");
}
void displayBooks(Book *books) {
for (i = 0; i < 100; i++) {
printf("%s: %s by %dn", books[i].title, books[i].author, books[i].year);
}
}
```
这个简单的图书管理系统实现了添加、删除、修改、查询和显示所有图书信息的功能。你可以根据需要进一步完善这个系统,例如添加用户管理、借阅记录等功能。