刚开始学习c语言,没什么思路

我的解答思路和尝试过的方法
我想要达到的结果

#include<stdio.h>
main()
{
int i,j;
char s1[80],s2[30];
printf("请输入第一个字符串: \n");
gets(s1)
getchar("请输入第二个字符串: \n");
gets(s2)
getchar();
i=0;
while(s1[i]!='\0')
{
[4]
}
[5]
{
s1[i]=s2[j];
i++;

 }
 [6]
 printf("链接后面的字符为:\n");
 [7]

}

下面是我的理解,供参考:



#include<stdio.h>
main()
{
    int i,j;
    char s1[80],s2[30];
    printf("请输入第一个字符串: \n");
    gets(s1);
    printf("请输入第二个字符串: \n");
    gets(s2);
//    getchar();
    i=0;
    while(s1[i]!='\0')
    {
        i++;  //让i设置为s1字符串结尾的位置 
    }
    
    for(j=0;s2[j]!='\0';j++)
    {
        s1[i]=s2[j];  //在s1后面拼接s2字符串 
        i++;  //指向s1数组下一个字符位置 
    
     }
    s1[i]='\0';  //拼接完s1字符串,在s1字符串结尾加上字符串结尾字符'\0' 
     printf("链接后面的字符为:\n");
     printf("%s",s1);
}