SAOE2 2015-12-12 14:12 采纳率: 0%
浏览 2261

c语言 把邻接矩阵的相关数据存入文件中

MGraph CreatMG(MGraph g)
{
int i,j,k,n;

cout<<"输入顶点数和边数";
cin>>g.n>>g.e;

for(i=0;i<g.n;i++)
{
    cout<<"序号为"<<i<<"的值";
    cin>>g.vexs[i].data;
    g.vexs[i].no=i;
}

for(i=0;i<g.n;i++)
{
    for(j=0;j<g.n;j++)
    {
        g.edges[i][j]=0;
    }
}

for(k=0;k<g.e;k++)
{
    cout<<"输入该边的始点与终点以及权值";
    cin>>i>>j>>n;

    g.edges[i][j]=n; 
}

return g;

}这是邻接矩阵的建立

  • 写回答

1条回答 默认 最新

  • ysuwood 2015-12-12 14:49
    关注

    如果MGraph 是结构体,用二进制存取最方便。你的函数建议用引用:

     void CreatMG(MGraph &g);
    
    #include<stdio.h>
    void main()
    {
        MGraph mg;
        FILE * fp;
        CreatMG(mg);
        fp=fopen("data.dat","wb");
        if(fp==NULL) return;
        fwrite(&mg,sizeof(MGraph),1,fp);
        fclose(fp);
    }
    
    
    评论

报告相同问题?

悬赏问题

  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作