C语言不能输入输出感叹号 ' ! '是为什么?

问题遇到的现象和发生背景

在使用Devc++编写输入阶乘式,求解的程序时出现不能正常输入输出 ' ! ' 的问题。

用代码块功能插入代码,请勿粘贴截图
#include
int main()
{
    char a;
    scanf("%c",&a);
    printf("%c",a);
    return 0;
 } 

运行结果及报错内容

img

img

我的解答思路和尝试过的方法

求解释^-^~

我想要达到的结果

可以正常输出“!”即可。^-^~~

你输入的感叹号是全角字符吧,不要在中文输入法下输入感叹号