为什么输入加了\n后程序不输出结果了?

零基础beginner来问一个低级问题,为什么scanf("%d",&x);改成scanf("%d\n",&x);之后,这个程序在输入n和n个数后回车,没有结果输出呀……

#include
using namespace std;
int main()
{

    int x,n,sum=0;
    double a;
    cin>>n;
    for(int i=1;i<=n;i++)
    {
        scanf("%d",&x);
        sum+=x;
    }
    a=sum/(double)n;
    cout<return 0;     
}

所以scanf中不要乱加东西。你加了\n,意味着一必然多输入一个换行符去匹配。最后你要输入n个数,就必须多输入n个空行。而且是要输入一个数,带一个空行才行

scanf里面的是格式化字符串,也就是说你的输入必须满足这个格式,否则会被过滤掉
你加了额外的换行,那么输入每个数据后面也必须输入一个额外的换行
格式化字符串不要乱改