diff --git a/字符串基本操作.c b/字符串基本操作.c new file mode 100644 index 0000000..853fe29 --- /dev/null +++ b/字符串基本操作.c @@ -0,0 +1,79 @@ +#include +#include +#include +#define MAXLEN 255 + +typedef struct{ + char ch[MAXLEN]; + int length; +}SString; + +//求子串 用Sub返回串S的第pos个字符起长度为len的子串 +bool SubString(SString *Sub,SString S,int pos,int len){ + if(pos+len-1>S.length){ + return false; + } + for(int i=pos;ich[i-pos+1] = S.ch[i]; + } + Sub->length = len; + return true; +} +//比较操作 若S>T,则返回值>0;若S=T,则返回值=0;若Sch[i] = x; + i ++; + scanf("%c",&x); + } + S->length = i-1; +} +//打印字符串 +void printString(SString S){ + for(int i=1;i<=S.length;i++){ + printf("%c",S.ch[i]); + } + printf("\n"); +} +int main(){ + SString S,T; + assign(&S); + assign(&T); + printf("求子串操作:\n"); + SString Sub; + SubString(&Sub,S,2,3); + printString(Sub); + printf("比较操作:\n"); + printf("S串和T串是否相等:%d\n",StrCompare(S,T)); + printf("定位操作:\n"); + printf("出现位置:%d",Index(S,T)); + return 0; +}