strlen strcpy strcmp strcat 四合一

#include <stdio.h>
#include <string.h>
char mystrlen(char *s);
char mystrcmp(char *dest,char *src);
void mystrcpy(char *dest,char *src);
void mystrcat(char *dest,char *src);
int main(int argc, const char *argv[])
{
    char arr[30]="0";
    char brr[30]="0";
    printf("请输入第一个数组:");
    gets(arr);
    printf("请输入第二个数组:");
    gets(brr);
    int len=mystrlen(arr);
    int cmp=mystrcmp(arr,brr);
    printf("mystrlen后第一个数组的长度:%d
",len);
    printf("mystrcmp后的值为:%d
",cmp);
    mystrcat(arr,brr);
    mystrcpy(arr,brr);
    return 0;
}
char  mystrlen(char *s)
{
    char *pa=s;
    int i,count=0;
    for(i=0;i<30;i++)
    {
        if(*(pa+i)!=0)
        {
            count++;
        }
    }
    return count;
}
char mystrcmp(char *dest,char *src)
{
    int j,l;
    char *pa=dest;
    char *pb=src;

    for(j=0;j<30;j++)
    {
        if(*pa!=*pb)
        {
            l=*pa-*pb;
            break;
        }
        else if(*pb==0 &&*pa==0)
        {
            l=0;
        }
        pa++;
        pb++;
    }
    return l;
}
void mystrcpy(char *dest,char *src)
{
    char *pa=dest;
    char *pb=src;
    while(*pb!=0)
    {
        *pa=*pb;
        pa++;
        pb++;
    }
    *pa=0;    
    printf("mystrcpy后第一个数组为:%s
",dest);
    printf("mystrcpy后第二个数组为:%s
",src);
}

void mystrcat(char *dest,char *src)
{
    char *pa=dest;
    char *pb=src;
    int i,len1;
    len1=strlen(pa);
    for(i=0;i<30;i++)
    {
        while(*pb!=0)
        {
            *(pa+len1)=*pb;
            pa++;
            pb++;
        }
    }
    printf("mystcat后第一个数组为:%s
",dest);
    
}