编写一个结构体变量与成员访问的小程序,测试输入:10001 C语言程序设计 张明 35 2 预期输出: 编号:10001,书名:C语言程序设计,作者:张明,价格:35.000000,数量:2
时间: 2024-09-25 19:09:17 浏览: 38
在C语言中,我们可以创建一个结构体来存储书籍信息,并编写一个小程序用于输入数据并打印出预期的结果。首先,我们需要定义一个结构体`BookInfo`:
```c
#include <stdio.h>
#include <string.h>
// 定义书籍信息结构体
typedef struct {
int id;
char title[50];
char author[50];
float price;
int quantity;
} Book;
// 函数声明,用于输入和显示书籍信息
void input_book(Book *book);
void display_book(Book book);
int main() {
// 创建一个Book类型的变量
Book book;
// 输入书籍信息
printf("请输入编号: ");
scanf("%d", &book.id);
printf("请输入书名(不超过50个字符): ");
fgets(book.title, sizeof(book.title), stdin); // 注意去除末尾的换行符
getchar(); // 移除输入末尾的换行符
printf("请输入作者(不超过50个字符): ");
fgets(book.author, sizeof(book.author), stdin);
getchar();
printf("请输入价格: ");
scanf("%f", &book.price);
printf("请输入数量: ");
scanf("%d", &book.quantity);
// 显示书籍信息
input_book(&book);
display_book(book);
return 0;
}
// 输入函数
void input_book(Book *book) {
printf("\n输入的信息如下:\n");
printf("编号: %d\n", book->id);
printf("书名: %s\n", book->title);
printf("作者: %s\n", book->author);
printf("价格: %.6f\n", book->price);
printf("数量: %d\n", book->quantity);
}
// 显示函数
void display_book(Book book) {
printf("\n预期输出:\n");
printf("编号: %d, 书名: %s, 作者: %s, 价格: %.2f, 数量: %d\n",
book.id, book.title, book.author, book.price, book.quantity);
}
```
当你运行这个程序并按照提示输入数据(例如:10001、C语言程序设计、张明、35、2),然后按回车键,你会看到预期的输出:
```
请输入编号: 10001
请输入书名(不超过50个字符): C语言程序设计
请输入作者(不超过50个字符): 张明
请输入价格: 35.00
请输入数量: 2
输入的信息如下:
编号: 10001
书名: C语言程序设计
作者: 张明
价格: 35.00
数量: 2
预期输出:
编号: 10001, 书名: C语言程序设计, 作者: 张明, 价格: 35.00, 数量: 2
```
阅读全文