零点柒 2021-01-13 15:48 采纳率: 40%
浏览 849

C语言如何将数据保存到二进制文件中?

    本人学生,在完成作业时遇到这样的问题:输入数据后将数据保存到二进制文件?我在网上查到使用二进制文件的打开方式有"wb",

于是我写了这段代码:

#include<stdio.h>
int main()
{
    struct student
    {
        int  num;
        char name[20];
        float score;
    }stu[80];
    int i;
    FILE *fp;
    fp=fopen("student.txt","wb");
    for(i=0;i<5;i++)
    scanf("%d%s%f",&stu[i].num,&stu[i].name,&stu[i].score);
        for(i=0;i<5;i++)
            printf("%d,%s,%f",stu[i].num,stu[i].name,stu[i].score);
for(i=0;i<5;i++)
            fprintf(fp,"%d,%s,%f",stu[i].num,stu[i].name,stu[i].score);
fclose(fp);
return 0;
}

但最终的结果和普通的文本文件一样,我想知道是结果原本就这样还是错了?如果错了,那么正确的代码怎么写,请各位前辈帮忙?

  • 写回答

1条回答 默认 最新

  • hychen0405 2021-01-13 17:12
    关注

    使用fwrite()

    评论

报告相同问题?

悬赏问题

  • ¥15 想用@vueuse 把项目动态改成深色主题,localStorge里面的vueuse-color-scheme一开始就给我改成了dark,不知道什么原因(相关搜索:背景颜色)
  • ¥20 OPENVPN连接问题
  • ¥15 flask实现搜索框访问数据库
  • ¥15 mrk3399刷完安卓11后投屏调试只能显示一个设备
  • ¥100 如何用js写一个游戏云存档
  • ¥15 ansys fluent计算闪退
  • ¥15 有关wireshark抓包的问题
  • ¥15 需要写计算过程,不要写代码,求解答,数据都在图上
  • ¥15 向数据表用newid方式插入GUID问题
  • ¥15 multisim电路设计