如何将字符串二维数组赋值给字符串一维指针数组?求高人帮忙,万分感激!
这是我的代码{printf("输入v1,v2,w:");chars1[100][3]={0};intd=0;FILE*fp1;fp1=fopen("f2.txt","r"...
这是我的代码
{
printf("输入v1,v2,w: ");
char s1[100][3] = {0};
int d=0;
FILE *fp1;
fp1 = fopen("f2.txt","r");
for(i=0;i<G->arcnum;i++)
for(d=0;d<3;d++)
{
fscanf(fp1,"%s",s1[i]);
strcpy(v1,s1[i]);
strcpy(v2,s1[i]);
w = atoi( s1[i]);
printf("%s %s %d\n",v1,v2,w);
}
G->arcs[i][j].adj=w;
G->arcs[j][i].adj = G->arcs[i][j].adj;
}
我的意思是从文档中读取需要的字符和数字,例如{A B 10,A C 2……},然后将A赋值给v1,B赋值给v2,10赋值给w;字母是定点,数字是距离,怎么办呢? 展开
{
printf("输入v1,v2,w: ");
char s1[100][3] = {0};
int d=0;
FILE *fp1;
fp1 = fopen("f2.txt","r");
for(i=0;i<G->arcnum;i++)
for(d=0;d<3;d++)
{
fscanf(fp1,"%s",s1[i]);
strcpy(v1,s1[i]);
strcpy(v2,s1[i]);
w = atoi( s1[i]);
printf("%s %s %d\n",v1,v2,w);
}
G->arcs[i][j].adj=w;
G->arcs[j][i].adj = G->arcs[i][j].adj;
}
我的意思是从文档中读取需要的字符和数字,例如{A B 10,A C 2……},然后将A赋值给v1,B赋值给v2,10赋值给w;字母是定点,数字是距离,怎么办呢? 展开
4个回答
展开全部
把你的整个代码弄出来,只有一段代码,不好改,谢谢
追问
涉及到保密的问题,我不能呀……
追答
原来如此。爱莫能助呀。不好意思
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
typedef struct _LINE
{
char a;
char b;
int c;
}LINE;
LINE result[100];
memset(result, 0, sizeof(LINE)*100);
FILE *fp = fopen("f2.txt","r");
if (NULL == fp)
{
printf("Open Config File Error\n");
return ;
}
int res = 0;
char buffer[MAX_PATH] = {0};
int i = 0;
for(i = 0; i < 100; i ++)
{
if(fgets(buffer, MAX_PATH, fp) != NULL)
{
res = sscanf(buffer,"%c %c %d", result[i].a, result[i].b, result[i].c);
if (res != 3)
{
printf("Parser PCAP_FILE_WORK_PATH Error\n");
//fclose(fp);
continue;
}
else
{
memset(buffer, 0, MAX_PATH);
continue;
}
}
}
fclose(fp);
{
char a;
char b;
int c;
}LINE;
LINE result[100];
memset(result, 0, sizeof(LINE)*100);
FILE *fp = fopen("f2.txt","r");
if (NULL == fp)
{
printf("Open Config File Error\n");
return ;
}
int res = 0;
char buffer[MAX_PATH] = {0};
int i = 0;
for(i = 0; i < 100; i ++)
{
if(fgets(buffer, MAX_PATH, fp) != NULL)
{
res = sscanf(buffer,"%c %c %d", result[i].a, result[i].b, result[i].c);
if (res != 3)
{
printf("Parser PCAP_FILE_WORK_PATH Error\n");
//fclose(fp);
continue;
}
else
{
memset(buffer, 0, MAX_PATH);
continue;
}
}
}
fclose(fp);
追问
能不这么做么?就是把我的代码改一下,能实现就行,谢谢啊!
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
说实话//没听懂你要干嘛。。。
追问
求最短路径算法,从文件中读取数据;也就是把A、B看作是输入的顶点,10看作是两点的距离;我现在要做的是把这些数据赋值给我所定义的顶点和距离的变量,应该怎么赋值呢?(A B 10是.txt文档的一行;A C 2是下一行,这样以此类推)把每一行的两个字母和一个数字赋值给变量v1,v2和w。麻烦你了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把需求说清楚点可以吗?没看懂你要干什么
追问
求最短路径算法,从文件中读取数据;也就是把A、B看作是输入的顶点,10看作是两点的距离;我现在要做的是把这些数据赋值给我所定义的顶点和距离的变量,应该怎么赋值呢?(A B 10是.txt文档的一行;A C 2是下一行,这样以此类推)把每一行的两个字母和一个数字赋值给变量v1,v2和w。麻烦你了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询