鱼C论坛

 找回密码
 立即注册
查看: 2574|回复: 7

临街图

[复制链接]
发表于 2016-5-10 21:33:50 From FishC Mobile | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
为什么顶点数和边数没办法录入
#include <stdio.h>
#include <stdlib.h>

#define MaxVertexNum 50 //定义最大顶点数
typedef struct node //边表节点
{
int adjvex; //邻接点域
struct node *next; //链域
}EdgeNode;
typedef struct Vnode //顶点表结点
{
char vertex; //顶点域
EdgeNode *firstedge; //边表头指针
}VertexNode;
typedef VertexNode AdjList[MaxVertexNum]; //AdjList是邻接表类型
typedef struct
{
AdjList adjlist; //邻接表
int n,e; //图中当前顶点数和边数
}ALGraph; //图类型

//=================建立图的邻接表============
void CreateALGraph(ALGraph *G)
{
int i,j,k;
char a,b;
EdgeNode *s; //定义边表节点
printf("Input VertexNum(n) and EdgesNum(e):");
scanf("%d,%d",&G->n,&G->e);
scanf("%c",&a);
printf("Input Vertex string:");
for(i=1;i<=G->n;i++) //建立边表
{
scanf("%c",&a);
G->adjlist[i].vertex=a; //读入顶点信息
G->adjlist[i].firstedge=NULL;//边表置为空表
scanf("%c",&b);
}
printf("Input edges,Create Adjacency List ");
for(k=1;k<=G->e;k++) //建立边表
{
scanf("%d,%d",&i,&j); // 读入边(Vi,Vj)的顶点对序号
s=(EdgeNode*)malloc(sizeof(EdgeNode)); // 生成边表结点
s->adjvex=j; //邻接点序号为j
s->next=G->adjlist[i].firstedge;
G->adjlist[i].firstedge=s; //将新结点*s插入顶点Vi的边表头部
s=(EdgeNode*)malloc(sizeof(EdgeNode));
s->adjvex=i; //邻接点序号为i
s->next=G->adjlist[j].firstedge;
G->adjlist[j].firstedge=s; //将新节点*S插入顶点Vi的边表头部
}
}

int main()
{
int i;
ALGraph *G;
G=(ALGraph*)malloc(sizeof(ALGraph));
CreateALGraph(G);
printf("%c",G->adjlist[2].vertex);
return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-5-10 22:45:25 | 显示全部楼层
scanf("%d,%d",&G->n,&G->e);   中间加个' , ' 这样的习惯真的好么。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-5-10 23:13:35 From FishC Mobile | 显示全部楼层
陌雨 发表于 2016-5-10 22:45
scanf("%d,%d",&G->n,&G->e);   中间加个' , ' 这样的习惯真的好么。。。

这没关系的吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-5-12 10:41:08 | 显示全部楼层

2L说的挺好,起码我没看代码,都输入崩溃了···

卤煮到底是哪里输入不行啊?我按照代码的格式,输入正确啊 // 我用的是英文半角

例如:
     1
a-----b
3|        |2
c-----d
     4
// 数字为边,字母为结点

4,4
a
b
c
d
1,2
2,4
1,3
3,4

然后输出了个b

在哪一步出了错,卤煮最好截个图或者说明一下。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-5-12 11:16:11 From FishC Mobile | 显示全部楼层
n0noper 发表于 2016-5-12 10:41
2L说的挺好,起码我没看代码,都输入崩溃了···

卤煮到底是哪里输入不行啊?我按照代码的格式,输入 ...

我输入了中文字符,感觉代码没错
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-5-12 11:22:27 | 显示全部楼层
而非是发色

评分

参与人数 1荣誉 -1 鱼币 -1 收起 理由
n0noper -1 -1 请不要无意义灌水!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-5-12 11:53:47 | 显示全部楼层
13751652677 发表于 2016-5-12 11:16
我输入了中文字符,感觉代码没错

主要就是那个两个数字之间的逗号,代码没仔细看,你可以单步调试一下。

如果不了解调试,请参考: http://bbs.fishc.com/thread-71753-1-1.html

有什么问题,再讨论。,
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-5-13 03:25:03 | 显示全部楼层
看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-6-24 19:54

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表