一个关于C语言的问题 求解

一个c primer plus 第六版的课后题 原题在下面

img

下面是我写的代码

#include <stdio.h>

void br(void);
void ic(void);
int main(void)
{
    br();
    ic();
    ic();
    printf("Brazil,Russia\n");
    
    return 0;
}
void br(void)
{
    printf("Brazil,Russia,\n");
}
void ic(void)
{
    printf("India,China\n");
}
    

然后打印出来是这样的
Brazil,Russia,
India,China
India,China
Brazil,Russia

求解如何把第一个ic()和br()打印在同一排

建议不要把换行写在函数封装里面,而是在有需要时再打印,即代码成这样

#include <stdio.h>
void br(void);
void ic(void);
int main(void)
{
    br();
    ic();
    printf("\n");
    ic();
    printf("\nBrazil,Russia");
    return 0;
}
void br(void)
{
    printf("Brazil,Russia,");
}
void ic(void)
{
    printf("India,China");
}

先说一句,我大一也用的这本书。你可以把换行操作从函数里取出来,放到主程序中实现换行