c语言用文件读取结构体内容并 C语言如何筛选出在一个功能函数内设在结构体内编号为0000的专业其代码如何打
时间: 2024-01-22 07:18:32 浏览: 141
假设结构体类型为:
```c
typedef struct {
char id[5]; // 专业编号
char name[20]; // 专业名称
} Major;
```
读取文件中的结构体内容的代码如下:
```c
FILE *fp = fopen("majors.dat", "rb");
Major m;
while (fread(&m, sizeof(Major), 1, fp) == 1) {
// 读取到一个结构体
// 可以在这里进行筛选或其他操作
}
fclose(fp);
```
要筛选出编号为"0000"的专业,可以在读取到一个结构体时,判断其编号是否匹配,代码如下:
```c
FILE *fp = fopen("majors.dat", "rb");
Major m;
while (fread(&m, sizeof(Major), 1, fp) == 1) {
// 读取到一个结构体
if (strcmp(m.id, "0000") == 0) {
// 编号匹配
// 可以在这里进行其他操作,比如输出专业名称
printf("专业名称:%s\n", m.name);
}
}
fclose(fp);
```
阅读全文