| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 421 人关注过本帖
标题:求助~~我用数组表示法储存的图,但是不知道为什么创建了之后输不出来。。。 ...
只看楼主 加入收藏
Emily_CYY
Rank: 2
等 级:论坛游民
帖 子:22
专家分:13
注 册:2013-4-1
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:4 
求助~~我用数组表示法储存的图,但是不知道为什么创建了之后输不出来。。。。急!!
程序代码:
#define VEXTYPE int
#define ADJTYPE int
#define MAXLEN 40

#include <stdio.h>

typedef struct {
    VEXTYPE vexs[MAXLEN];
    ADJTYPE arcs[MAXLEN][MAXLEN];
    int vexnum,arcnum;
    int kind;
}MGRAPH;      //定义graph结构体

MGRAPH create_mgraph(){

    MGRAPH mg;
    int i,j,k;
    
    mg.kind=2;  //2代表无向图。。。。有待改进

    printf("\n请输入顶点数和边的条数(以逗号隔开):");
    scanf("%d,%d",&i,&j);
    fflush(stdin);   //该函数是清空当前输入流所剩下的所有数据  e.g scanf("%d",&i); c=getchar();   12
    if(i<=MAXLEN && j<=(MAXLEN*(MAXLEN-1))/2 )  //严格意义上,输入均要判断其合法性
    mg.vexnum=i; mg.arcnum=j;

    for(i=1;i<=mg.vexnum;i++){
    printf("请输入第%d个顶点",i);
    scanf("%d",&mg.vexs[i-1]);fflush(stdin);
    }

    for(i=0;i<mg.vexnum;i++)       //邻接矩阵由于设定是[40][40],多出的用不上,所以用多少控制多少
        for(j=0;j<mg.vexnum;i++)    //初始化我们所需要的邻接矩阵
          mg.arcs[i][j]=0;

    for(k=1;k<=mg.arcnum;k++){   
     printf("请输入第%d条边的起始顶点和终止顶点(以逗号隔开)",k);
     scanf("%d,%d",&i,&j);
     mg.arcs[i-1][j-1]=1;
     mg.arcs[j-1][i-1]=1;
     fflush(stdin);
    }

    return mg;
}

void print_mgraph( MGRAPH mg ){

    int i=0,j=0;
    
    for(i=0;i<mg.vexnum;i++) {    //有问题!!!
        for(j=0;j<mg.vexnum;j++){
        
            printf("%d ",mg.arcs[i][j]);
            if((j+1)%mg.vexnum==0)  printf("\n");
        }
    }     
}


void main(){

    MGRAPH mg;
    mg=create_mgraph();

    print_mgraph(mg);
}
搜索更多相关主题的帖子: color 
2013-05-08 12:15
Emily_CYY
Rank: 2
等 级:论坛游民
帖 子:22
专家分:13
注 册:2013-4-1
收藏
得分:0 
求解答。。。。。谢谢啦!!
2013-05-08 18:28
笑傲
Rank: 8Rank: 8
来 自:迪拜
等 级:蝙蝠侠
威 望:5
帖 子:223
专家分:856
注 册:2013-3-9
收藏
得分:10 
for(i=0;i<mg.vexnum;i++)       //邻接矩阵由于设定是[40][40],多出的用不上,所以用多少控制多少
        for(j=0;j<mg.vexnum;j++)    //初始化我们所需要的邻接矩阵   这里是j++不是i++;把这里改一下应该就可以了
          mg.arcs[i][j]=0;

练就一身本领,只为笑傲江湖!
2013-05-08 19:41
Emily_CYY
Rank: 2
等 级:论坛游民
帖 子:22
专家分:13
注 册:2013-4-1
收藏
得分:0 
回复 3楼 笑傲
天。。。。。我怎么这么粗心~~~不过谢谢啦!!
2013-05-08 19:48
笑傲
Rank: 8Rank: 8
来 自:迪拜
等 级:蝙蝠侠
威 望:5
帖 子:223
专家分:856
注 册:2013-3-9
收藏
得分:0 
回复 4楼 Emily_CYY
不客气,一起学习嘛!

练就一身本领,只为笑傲江湖!
2013-05-08 19:53
快速回复:求助~~我用数组表示法储存的图,但是不知道为什么创建了之后输不出来。 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.064480 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved