定义一个描述学校图书馆图书信息结构 编写input和printf函数 c
时间: 2024-10-11 16:11:47 浏览: 3
在C语言中,你可以定义一个结构体来表示学校图书馆的图书信息,包括书名、作者、出版社、出版年份以及图书的库存量。下面是一个简单的例子:
```c
#include <stdio.h>
// 定义图书信息结构体
typedef struct {
char book_title[50]; // 书名
char author[50]; // 作者
char publisher[50]; // 出版社
int publication_year; // 出版年份
int stock; // 库存量
} LibraryBook;
// 输入函数,用于获取用户输入并填充图书信息
void input_book(LibraryBook* book) {
printf("请输入书名:\n");
fgets(book->book_title, sizeof(book->book_title), stdin);
getchar(); // 清除换行符
printf("请输入作者:\n");
fgets(book->author, sizeof(book->author), stdin);
getchar(); // 清除换行符
printf("请输入出版社:\n");
fgets(book->publisher, sizeof(book->publisher), stdin);
getchar(); // 清除换行符
printf("请输入出版年份:\n");
scanf("%d", &book->publication_year);
printf("请输入库存量:\n");
scanf("%d", &book->stock);
}
// 打印图书信息函数
void print_book(const LibraryBook* book) {
printf("书名: %s\n", book->book_title);
printf("作者: %s\n", book->author);
printf("出版社: %s\n", book->publisher);
printf("出版年份: %d\n", book->publication_year);
printf("库存量: %d\n", book->stock);
}
int main() {
LibraryBook book;
input_book(&book); // 获取用户输入
print_book(&book); // 输出图书信息
return 0;
}
```
在这个示例中,`input_book`函数通过`scanf`和`fgets`获取用户的输入,并存储到结构体中;`print_book`函数则打印出已存储的信息。