怎么样用C语言添加结构体信息高手请进~~~~~``

怎么样用C语言添加结构体信息高手请进~~~~~``,第1张

struct student{

char name

int number

struct student *next

}

这样你定义了三个字段,姓名,number

我不知道你为什么这么定义,如果是我可能这么定义

struct student {

char name/*学生姓名*/

int 性别/*1代表femail (女性), 0 代表mail(男性)*/

int age

struct student *next/*为了用链表实现而采用*/

};

这样完全可以实现你需要的数据类型.只需要再加上一些算法就可以了.

如果还有什么问题可以与我联系.

一般工业上都会使用 typedef 来定义公司内部的统一定义如

typedef struct student {

}

C语言把一个结构体数组写入文件分三步:

1、以二进制写方式(wb)打开文件

2、调用写入函数fwrite()将结构体数据写入文件

3、关闭文件指针

相应的,读文件也要与之匹配:

1、以二进制读方式(rb)打开文件

2、调用读文件函数fread()读取文件中的数据到结构体变量

3、关闭文件指针

参考代码如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

#include<stdio.h>

struct stu {

char name[30]

int age

double score

}

int read_file()

int write_file()

int main()

{

if ( write_file() <0 ) //将结构体数据写入文件

return -1

read_file()//读文件,并显示数据

return 0

}

int write_file()

{

FILE *fp=NULL

struct stu student={"zhang san", 18, 99.5}

fp=fopen( "stu.dat", "wb" )//b表示以二进制方式打开文件

if( fp == NULL ) //打开文件失败,返回错误信息

{

printf("open file for write error\n")

return -1

}

fwrite( &student, sizeof(struct stu), 1, fp )//向文件中写入数据

fclose(fp)//关闭文件

return 0

}

int read_file()

{

FILE *fp=NULL

struct stu student

fp=fopen( "stu.dat", "rb" )//b表示以二进制方式打开文件

if( fp == NULL ) //打开文件失败,返回错误信息

{

printf("open file for read error\n")

return -1

}

fread( &student, sizeof(struct stu), 1, fp )//读文件中数据到结构体

printf("name=\"%s\" age=%d score=%.2lf\n", student.name, student.age, student.score )//显示结构体中的数据

fclose(fp)//关闭文件

return 0

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11610184.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存