c语言题目,字符串的基本操作(5个基本函数实现)

来源:百度知道 编辑:UC知道 时间:2024/06/08 02:35:52
小弟期末考试题目,希望哪位高手帮帮忙...

#include <stdio.h>
#define MAXN 100
typedef enum { fail, success } status;
typedef enum { false, true} boolean;
char s[MAXN], s1[MAXN], s2[MAXN];
void scopy(char s1[],char s2[])
{int i=0;
while(s2[i]!='\0')
{ s1[i]=s2[i];
i++;
}
s1[i]='\0';
}
int strlen(char s[] )
{ int i;
for (i=0; s[i]!='\0'; i++ );
return (i);
}
status strcat(char s1[],char s2[])
{int i, j, k;
if ((i=strlen (s1)) + (j=strlen (s2) )>=MAXN)
return (fail);
for (k=0; k<=j; k++ )
s1[i+k]=s2[k];
return (success);
}
status strins(char s1[], int i, char s2[ ])
{int m, n, k;
if (i<0||i>(m=strlen(s1))||m+(n=strlen(s2))>MAXN)
return(fail);
if(m+n<=MAXN){
for(k=m+n-1;k>=n+i;k--)
s1[k]=s1[k-n];
for(k=0;k<n;k++)s1[k+i]=s2[k];
m=m+n;
}
else if(k+n<=MAXN){
for(k=MAXN-