|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
小甲鱼数据结构,创建邻接矩阵结果跑出来会在输入权值的地方自动循环打印,不能输入
求大佬指点一下哇
- #include<stdio.h>
- typedef char VertexType; //顶点类型
- typedef int EdgeType; //边上的权值类型
- #define MAXVEX 10 //最大顶点数
- #define INFINITY 2047 //表示正无穷
- typedef struct
- {
- VertexType vexs[MAXVEX]; //顶点信息
- EdgeType ARC[MAXVEX][MAXVEX]; //邻接矩阵
- int VexNum, EdgeNum; //顶点数,边数
- } MGraph;
- void CreateMGraph(MGraph *G)
- {
- int i, j , w;
- printf("请输入顶点数和边数:\n");
- scanf("%d,%d", &G->VexNum, &G->EdgeNum);
- //顶点表
- printf("\n请依次输入顶点名:\n");
- for (i = 0; i < G->VexNum; i++)
- scanf("%c", &G->vexs[i]);
-
- //初始化邻接矩阵
- for (i = 0; i < G->VexNum; i++)
- for (j = 0; j < G->VexNum; j++)
- G->ARC[i][j] = INFINITY;
- for (i = 0; i < G->VexNum; i++)
- for (j = 0; j < G->VexNum; j++)
- {
- printf("请输入(%d,%d)处权值w:\n", i+1, j+1);
- scanf("%d", &w);
- G->ARC[i][j] = G->ARC[j][i] = w;
- }
- }
- int main()
- {
- MGraph G;
- CreateMGraph(&G);
- return 0;
- }
复制代码
scanf("%c", &G->vexs[i]);
这里使用%c会把空格和回车也作为字符读取换成 scanf("%ls", &G->vexs[i]);即可
|
|