文章如下例:
今天天氣很好,我想出去玩,但是又怕下雨,不知道怎麼辦。
關鍵字:今天,天氣,下雨,不知道
我想要把句子和關鍵字存入陣列
句子的陣例,如上得a[4]=今天天氣很好,我想出去玩,但是又怕下雨,不知道怎麼辦
關鍵字的陣例,如上得b[4]=今天,天氣,下雨,不知道
然後句子跟關鍵字比較
每句都在生成陣列
陣列的數是關鍵字的字數,如上得c[4]
像第一句的陣列得到1,1,0,0
第二句的陣列得到0,0,0,0
第三句的陣列得到0,0,1,0
第四句的陣列得到0,0,0,1
2006-08-03 11:41:58 · 3 個解答 · 發問者 〝Beat It﹋ 2 in 電腦與網際網路 ➔ 程式設計
//Power by Microsoft Visual Studio 2005//可以使用 Dev-C++ 編譯此程式#include
圖片參考:http://www.geocities.com/linuxhmj/picture/c1.png
2006-08-03 12:39:58 · answer #1 · answered by Big_John-tw 7 · 0⤊ 0⤋
http://tw.knowledge.yahoo.com/question/?qid=1106080706106
綿羊可以幫我再看看下一個問題嗎...謝謝
2006-08-07 10:13:54 · answer #2 · answered by 〝Beat It﹋ 2 · 0⤊ 0⤋
// 這個 function 會數 keyword 這個字串在 target 中出現了多少次
int CountOccurence(char* target, char* keyword)
{
// 累加的答案
int count = 0;
// 用 strstr 來找 target 中是否有 keyword
char* finger = strstr( target, keyword );
// 若是有的話,累加,並找下一個
while( finger )
{
count++;
// 跳過子字串前面的 keyword 後再找看有沒有別的 keyword
finger = strstr( finger + strlen(keyword), keyword );
}
return count;
}
int _tmain(int argc, _TCHAR* argv[])
{
// 你的句子
char sentences[4][200] = { "今天天氣很好", "我想出去玩", "但是又怕下雨", "不知道怎麼辦" };
// 你的keyword
char keywords[4][200] = { "今天", "天氣", "下雨", "不知道" };
// 答案的陣列
char answer[4][4];
int i, j;
for(i=0; i<4; i++)
{
for(j=0; j<4; j++)
{
// 對每一個句子跟每一個keyword的組合,呼叫 CountOccuurence來看keyword出現幾次
answer[i][j] = CountOccurence( sentences[i], keywords[j] );
printf("%d ", answer[i][j]);
}
printf("\n");
}
getch();
}
2006-08-03 12:17:51 · answer #3 · answered by Dave 7 · 0⤊ 0⤋