此程序需要讀取兩個字符串,這兩個字符串將傳遞給「確認」功能,它們將被讀取,並且該函數將具有找到一個共同的詞。我無法讀取第二個字符串,無論我插入多少個getchar
但在主要我不能讀取「string2」字符串!不管我插入多少個getchar。對於\n
串1的輸入之後
#include <stdio.h>
#include <string.h>
void confirm(char string1[],char string2[]){
char word[20];
char w_aux[20];
int i, j, k, l, m;
int len1, len2;
int find;
i = 0;
len1 = strlen(string1);
len2 = strlen(string2);
while (i < len1){
j = 0;
while ((string1[i] != ' ') && (i < len1)){
word[j] = string1[i];
i++;
j++;
}
word[j] = '\0';
k = 0;
find = 0;
while((k < len2) && (find == 0)){
l = 0;
while ((string2[k] != ' ') && (k < len2)){
w_aux[l] = string2[k];
k++;
l++;
}
w_aux[l] = '\0';
if (j == l){
m = 0;
while((word[m] == w_aux[m]) && (m<j)){
m++;
}
if (m == j){
find = 1;
}
}
k++;
}
i++;
}
printf("%s\n", word);
}
int main(){
char string1[20];
char string2[20];
printf("Type the first text: \n");
scanf("%[^\n]s", string1);
printf("Type the second text: \n");
scanf("%[^\n]s", string2);
getchar();
confirm(string1, string2);
return 0;
}
'scanf()'格式的'''做什麼? –
歡迎來到StackOverflow。請閱讀並遵守幫助文檔中的發佈準則。 [MCVE](http://stackoverflow.com/help/mcve)適用於此處。在您發佈代碼並準確描述問題之前,我們無法有效幫助您。你應該顯示輸入和輸出,以及你已經完成的調試結果。 – Prune