C语言实现两个字符串的连接用函数完成

我忘记了怎么弄了,求帮忙,顺便求一下流程图
#include<stdio.h>

int fun(char c[100], char d[100])

{

    int i, j;
    for (i = 0; c[i] != '\0'; i++);

    for (j = 0; d[j] != '\0'; j++)

    {

        c[i++] = d[j];

    }

    c[i] = '\0';
    puts(c);
    return c[100];

}

int main()

{

    char a[100];

    char b[100];

    gets_s(a);

    gets_s(b);

    fun(a, b);

    return 0;

}

 

#include <stdio.h>

//把s拼接到t后面,t没做容量检查
char * fun(char *t,const char *s)
{   
    char*p=t;
    while(*p++);//找到字符串t的末尾
    p--;    //跳过'\0'
    while(*s)//开始拼接
    {
        *p=*s;
        p++;
        s++;
    }

    return t;
}

int main()
{
    char a[100]="abcdef";
    char b[]="123456";
    
    fun(a,b);

    printf("%s\n",a);

    return 0;
}