【发布时间】:2014-01-24 01:42:47
【问题描述】:
我写了一个程序来比较句子并找到相似的单词。我应该得到的结果是表 A 中每个相似单词的确切单元格位置,但我不知道该怎么做。
#include<stdio.h>
#include<string.h>
int main()
{
int i=-1,j=0,q;
char A[1000],B[1000],C[1000][1000]={0},*x,*y;
char c[1]=" ";
// Just giving the words
printf("\nGive table A:\n");
do
{
i++;
A[i]=getchar();
}while(A[i]!='\n');
A[i]='\0';
printf("\n\nGive table B:\n");
i=-1;
do
{
i++;
B[i]=getchar();
}while(B[i]!='\n');
B[i]='\0';
// Compairing every word of the 2 tables (A and B)
y=strtok(B,c);
x=strtok(A,c);
i=0;
while(x!=NULL)
{
while(y!=NULL)
{
q=strcmp(x,y);
if(!q)
{
// I need to track the cell number of table A here but how?
printf("%s\n",x);
j++;
}
y=strtok(NULL,c);
}
x=strtok(NULL,c);
if(C[i][0])
i++;
j=0;
}
return 0;
}
【问题讨论】:
-
那么你想比较A和B,找出A中存在B中的单词吗?
-
“追踪手机号码”是什么意思? (另外:
c应该是 2 个chars:一个也可以包含 nul 终止符) -
定义你的“相似”。
-
是的,我想要两个表中每个单词相似的表 A 上的第一个字母的位置。 “相似”是指它们具有完全相同的字母。感谢 c[1],我会记住的。
-
@JimuX 要将结果存储在哪里?