c语言问题:请一位有耐心的朋友教一下我这个高一学生

这道题的问题是:从键盘输入一个字符序列,以'#'结束,输出其中的数字字符并统计数字字符的个数。
但是,我写了一套程序,如下图,当我输入一串字符串时,按下空格,就一直只显示我puts语句后的内容,跳不出循环,然后我将第一个if后的continue改为break,虽然跳出了循环,但是结果都不对,请问一下这个程序到底原因在哪,我还想问问char这个声明究竟啥意思?然后我scanf输入的字符串在计算机中是一个一个字符来判断的吗还是怎么样?我高一学生,望一个有耐心的大佬指导指导。

img

img