c语言if语句学习问题

#include <stdio.h>
#include <math.h>

int main()
{
int i;

printf("请输入分数:\n");

scanf("%d\n",&i);

if(i>=90)
{
    printf("你的分数是A级!恭喜您!\n");    
}
else if (i>=80&&i<90)
{
    printf("您的分数为B级,请继续努力!\n");
}
else
{
    printf("您的分数为差评,请继续努力!\n");
}
return 0;

}

问题:在编译运行后 输入第一个值不返回评级而随意输入第二个值后才能返回评级。

你是怎么输入第二个值的?
在这个程序中,你只能输入一次值,然后程序就退出了

第3行:scanf("%d\n",&i); 这里多了 \n , 改为:scanf("%d",&i);

Scanf里面带换行是什么写法...这里不应该有个换行