帮忙看看程序哪点有问题
程序代码:
#include"stdio.h" #include"stdlib.h" main() { char c,a[100]; int i,t=0; while(c!='\n') { scanf("%c",&c); if(c>=65&&c<=87||c>=97&&c<=119) a[t++]=c+3; else { if(c>=88&&c<=90||c>=120&&c<=122) a[t++]=c-23; else a[t++]=c; } } for(i=0;i<t;i++) printf("%c",a[i]); system("pause"); } 将输入的字符串译成密码,密码的规律是:若为英文字母,则取字母后面的第3个字母代替原来的字母,非字母则不变,若为字母表最后三个字母则分别用最前面三个字母替换,例如x译成密码a,z译成密码c 为什么输出的字符里会多出了换行字符?