嗨嗨嗨5749 2022-06-01 09:37 采纳率: 90%
浏览 42
已结题

C语言 文件板块内容编程

程序可以运行,可以在磁盘中存入内容,但是存入磁盘中的内容与我输入的内容不太一样。为什么?

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct student
{
    char name[10];
    int number;
    int age;
    char address[20];
}a[3];
int main()
{
    int i=0;
    FILE *fp;

    for(i=0;i<3;i++)
        scanf( "%s%d%d%s",a[i].name, &a[i].number, &a[i].age, a[i].address );
    
    if( ( fp = fopen ( "d:\\a.txt" , "w" ) ) == NULL)
    {
        printf("打开文件失败\n");
        exit(1);
    }
    fwrite( a, sizeof( struct student ), 3, fp );
    fclose( fp );
    return 0;
}

  • 写回答

1条回答 默认 最新

  • qzjhjxj 2022-06-01 11:03
    关注

    修改如下,供参考:

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    struct student
    {
        char name[10];
        int number;
        int age;
        char address[20];
    }a[3];
    int main()
    {
        int i = 0;
        FILE* fp;
    
        for (i = 0; i < 3; i++)
            scanf("%s%d%d%s", a[i].name, &a[i].number, &a[i].age, a[i].address);
    
        if ((fp = fopen("d:\\a.txt", "w")) == NULL)
        {
            printf("打开文件失败\n");
            exit(1);
        }
        //fwrite(a, sizeof(struct student), 3, fp);
        for (i = 0; i < 3; i++)
            fprintf(fp, "%s %d %d %s\n", a[i].name, a[i].number, a[i].age, a[i].address);
        fclose(fp);
        return 0;
    }
    
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 6月1日
  • 已采纳回答 6月1日
  • 创建了问题 6月1日

悬赏问题

  • ¥15 急matlab编程仿真二阶震荡系统
  • ¥20 TEC-9的数据通路实验
  • ¥15 ue5 .3之前好好的现在只要是激活关卡就会崩溃
  • ¥50 MATLAB实现圆柱体容器内球形颗粒堆积
  • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
  • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型
  • ¥15 如何实现H5在QQ平台上的二次分享卡片效果?
  • ¥15 python爬取bilibili校园招聘网站
  • ¥30 求解达问题(有红包)
  • ¥15 请解包一个pak文件