编程序将结构体类型数组中的内容保存至文本文件中,并输出到屏幕。结构体类型包括图书名称、图书作者、图书价格和库存4项成员,文件名为”books.txt“,保存位置为e盘。提示:保存数据到文件使用fprintf函数。
时间: 2024-02-13 12:59:57 浏览: 117
好的,我会给你写一个示例代码来实现这个功能,代码如下:
```c
#include <stdio.h>
// 定义结构体类型 Book
typedef struct {
char name[50]; // 图书名称
char author[50]; // 图书作者
float price; // 图书价格
int stock; // 库存
} Book;
int main() {
Book books[3] = { // 定义结构体类型数组并初始化
{"C语言程序设计", "谭浩强", 29.8, 100},
{"Java编程思想", "Bruce Eckel", 89.0, 50},
{"Python入门", "廖雪峰", 45.5, 80}
};
FILE *fp = fopen("e:/books.txt", "w"); // 打开文件
if (fp == NULL) { // 判断文件是否打开成功
printf("文件打开失败!\n");
return 1;
}
// 将结构体类型数组中的内容保存至文本文件中,并输出到屏幕
for (int i = 0; i < 3; i++) {
fprintf(fp, "%s %s %.2f %d\n", books[i].name, books[i].author, books[i].price, books[i].stock);
printf("%s %s %.2f %d\n", books[i].name, books[i].author, books[i].price, books[i].stock);
}
fclose(fp); // 关闭文件
return 0;
}
```
上述代码中,我们先定义了一个结构体类型 Book,包括图书名称、图书作者、图书价格和库存4项成员。然后在主函数中定义一个结构体类型数组 books,并初始化了三个结构体变量。
接着,我们使用 fopen 函数打开了一个名为 “books.txt” 的文本文件,并将文件指针保存在变量 fp 中。如果文件打开失败,则输出提示信息并退出程序。
然后,我们使用 fprintf 函数将结构体类型数组中的内容保存至文本文件中,并使用 printf 函数将保存的内容输出到屏幕上。
最后,我们使用 fclose 函数关闭文件,释放资源。
运行该程序后,将会在 e 盘根目录下生成一个名为 “books.txt” 的文本文件,并且在屏幕上输出结构体类型数组中的内容。
阅读全文