你的输入不对,scanf放到循环外面,而且只输入一个字符,不是@就死循环了。应该这样:while(scanf("%c",&ch) && ch!='@')
while内加上一个输入,你程序需只读入了一个字符,把printf("%c",ch);放在while外,原来是printf的位置换成scanf("%c",&ch);
main函数类型应该是void