不太明白,为什么后面多输出了 个-86

问题遇到的现象和发生背景
用代码块功能插入代码,请勿粘贴截图
我想要达到的结果

img

img

#include
int main()
{  char a;
 while(scanf("%c",&a)!=EOF)
 {int t=0;

 if(a>=65&&a<=90)
  { t=a-64;
  }
 else
  { t=a-96;
  }
  printf("%d\n",t);}
    return 0;
}

这是换行符的处理结果啊
换行符ASCII码是10,执行eIse代码块,减去96后就是-86