C语言 设计一个图书馆信息结构体,包括有,书号,书名,作者,出版社,出版日期,定价等信息。通过键盘键入结构体信息,并实现所有信息的输出。
时间: 2023-08-03 14:08:28 浏览: 118
好的,以下是代码实现:
```c
#include <stdio.h>
#define MAX_BOOKS 100 // 最大书籍数量
struct Book {
char id[20]; // 书号
char name[50]; // 书名
char author[30]; // 作者
char publisher[30]; // 出版社
char publish_date[20]; // 出版日期
double price; // 定价
};
int main() {
struct Book library[MAX_BOOKS];
int i, num;
printf("请输入图书馆书籍数量(最多%d本):", MAX_BOOKS);
scanf("%d", &num);
getchar(); // 消耗掉输入的回车符
for (i = 0; i < num; i++) {
printf("\n请输入第%d本书的信息:\n", i + 1);
printf("书号:");
fgets(library[i].id, 20, stdin);
printf("书名:");
fgets(library[i].name, 50, stdin);
printf("作者:");
fgets(library[i].author, 30, stdin);
printf("出版社:");
fgets(library[i].publisher, 30, stdin);
printf("出版日期:");
fgets(library[i].publish_date, 20, stdin);
printf("定价:");
scanf("%lf", &library[i].price);
getchar(); // 消耗掉输入的回车符
}
printf("\n图书馆书籍信息如下:\n");
for (i = 0; i < num; i++) {
printf("第%d本书:\n", i + 1);
printf("书号:%s", library[i].id);
printf("书名:%s", library[i].name);
printf("作者:%s", library[i].author);
printf("出版社:%s", library[i].publisher);
printf("出版日期:%s", library[i].publish_date);
printf("定价:%.2f\n", library[i].price);
}
return 0;
}
```
运行结果如下:
```
请输入图书馆书籍数量(最多100本):2
请输入第1本书的信息:
书号:A123456
书名:C语言程序设计
作者:Tom
出版社:清华大学出版社
出版日期:2022-01-01
定价:50.5
请输入第2本书的信息:
书号:B123456
书名:Java编程思想
作者:Jack
出版社:人民邮电出版社
出版日期:2022-01-02
定价:68.8
图书馆书籍信息如下:
第1本书:
书号:A123456
书名:C语言程序设计
作者:Tom
出版社:清华大学出版社
出版日期:2022-01-01
定价:50.50
第2本书:
书号:B123456
书名:Java编程思想
作者:Jack
出版社:人民邮电出版社
出版日期:2022-01-02
定价:68.80
```
阅读全文