关于#ar#的问题,如何解决?(语言-c语言)

问题遇到的现象和发生背景

在写的时候被卡了😭
/(2) 定义两个字符数组:char str1[80], str2[80],其中字符串str1接受从键盘输入,然后编程将字符数组str1的内容逐个拷贝到字符数组str2中。(不允许使用库函数strcpy)
提示:从键盘接受1个字符串输入str1后,使用一个循环将str1中字符逐个赋值给str2中的对应元素。
测试实例:
输入:Hello World! 输出:Hello World!
/

用代码块功能插入代码,请勿粘贴截图
#include
int main()
{
    char str1[80],str2[80];
    int i;
    scanf("%s",&str1[80]);
    gets(str1);
    for(i=0;i<80;i++)
    {str2[i]=str1[i];}
    printf("%s\n",str2);
    return 0;
}

运行结果及报错内容
cannot find -lobjc
[Error] ld returned 1 exit status

好几个错误,修改如下:

#include<stdio.h>
int main()
{
    char str1[80],str2[80];
    int i = 0;
    gets(str1);
    while(str1[i] != '\0')
    {
        str2[i] = str1[i];
        i++;
    }
    str2[i] = '\0';
    printf("%s\n",str2);
    return 0;
}
 

使用了scanf后为啥还要使用gets,要读入空格的话使用gets就行

#include<stdio.h>
#include<string.h>
int main()
{
    char str1[80],str2[80];
    int i;
    gets(str1);
    int len = strlen(str1);
    for(i=0;i<len;i++)
    {
        str2[i]=str1[i];
    }
    printf("%s\n",str2);
    return 0;
}