c语言函数调用使用问题

问题遇到的现象和发生背景
用代码块功能插入代码,请勿粘贴截图
我想要达到的结果
#include <stdio.h>
int s(char c[])
{
    int i;
    for  (i=1; i <= 5; i += 2)
    {
        c[i] = ' ';
    }
    return s;
}
int main()
{
    char c[7];
    int n;
    printf("请输入四位正整数:");
    for (n = 0; n <= 6; n += 2)
    {
     scanf_s("%c", &c[n]);
    }
    s(c);
    puts(c);
}

问题是:编写一函数,在一个四位正整数的两个数字间加一个空格,如原正整数是2015,加空格后为。要求在主函数中输入四位正整数,输出加空格后的数。

img

img

来个递归,很简单的

/*张汉文编写1108*/
#include <stdio.h>

void fun(int n)
{
    if(n<10)
        printf("%d",n);
    else
    {
        fun(n/10);
        printf(" %d",n%10);
    }
}


int main()
{
    int n;
    scanf("%d",&n);
    fun(n);
    return 0;
}

puts的字符串要以'\0'结尾,你是按%c输入的,要手动添加这个标志。
字符串初始化一下就哦了char c[7] = {0};