c语言结构体数组存入文件_c语言怎么把结构体数组写入txt文件

满意答案

qiaxiaoyu

2013.04.20

采纳率:48%    等级:12

已帮助:8252人

fopen("student.txt","wb")

b就是二进制的意思。你用二进制形式将student.txt打开

而fwrite也是将内存中的数据不经转换直接写入文件,所以文件中保存的是二进制形式,当然看到乱码了。

你试试:

if((fp1=fopen("student.txt","w"))==NULL)

{printf("cannot open this file\n"); exit(0); }

printf("No Name Eng point Math point Phy point\n");

for(i=0;i

{scanf("%s,%s,%d,%f,%d,%f,%d,%f",student[i].no,student[i].name,&student[i].eng,&student[i].point1, &student[i].math,&student[i].point2,&student[i].phy,&student[i].point3); student[i].ave=(student[i].eng+student[i].math+student[i].phy)/3.0; fprintf(fp1,"%s,%s,%d,%f,%d,%f,%d,%f",student[i].no,student[i].name,student[i].eng,student[i].point1, student[i].math,student[i].point2,student[i].phy,student[i].point3); }

就是用fprintf函数写入文件,你试试看吧。

03分享举报


版权声明:本文为weixin_34942785原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。