Xtiofz: 其实有一处小错误,例如数组a="abcdfafdcdefa" 数组b="cde",b存在于a,但是第一次遍历到d后的f时,就因为f不等于e而退出循环了,检测不到后面的cde,我稍作了修改[code=csharp]#include <> #include <> /** * 字符串originString是否包含字符串substring,是则返回0;否则返回1;异常返回-1 */ int contain(const char *originString, char *substring) { // 参数校验 if (originString == NULL || substring == NULL || strlen(substring) > strlen(originString)) { printf("参数异常,请重新输入!\n"); return -1; } int rest = 1; int n = strlen(originString); int m = strlen(substring); int i; for (i = 0; i < n; i++) { if (originString[i] == substring[0]) { int j; int k = i; for (j = 0; j < m; j++) { if (n - k < 1) return 1; else if (originString[k] == substring[j]) { k++; if(j==m-1) return 0; } else break; } } } return rest; } int main () { char a[128] = "abcdfafdcdefa"; char [/code]
使用Java将数组中的元素拼接(以某个字符串作为分隔符)
C语言判断是否存在某个子字符串