初夏小談:有關函式strstr(字串的查詢)
阿新 • • 發佈:2018-11-25
實現strstr 函式(字串的查詢)
實現strstr思想:是從源字串中依次尋找目標字串的首元素,再依次比較之後的字串,如果目標字串與所找位置都相同就返回,否則從源字串的下一個字元開始尋找,一次循壞。
#include<Aventador_SQ.h> int Strstr(char arr[], const char arr1[],int* location) { int i = 0; int ArrLen = strlen(arr); int Arr1Len = strlen(arr1); int temp = ArrLen - Arr1Len; for (i = 0; i <= temp; i++) { for (int j = 0; j < Arr1Len; j++) { if (arr[i + j] != arr1[j]) { break; } else { if (j == Arr1Len -1) { *location = i + 1; return 1; } } } } return 0; } int main() { int location = 0;//記錄字串首次出現的位置 char arr[1024]; char arr1[1024]; printf("請輸入源字串:"); scanf("%s", arr); printf("請輸入待查字串:"); scanf("%s", arr1); int temp = Strstr(arr, arr1, &location); if (temp == 1) { printf("找到了\n"); printf("該字串首次出現的源字串的位置是:第%d位\n", location); } else { printf("沒找到\n"); } system("pause"); return 0; }
珍&原始碼