我想实现输入一串字符然后提取其中的数字,但是为什么运行后是这个结果,请问代码是出了什么问题吗?

#include <stdio.h>
int main()
{
char ch;
int n;
printf("Please input an integer number:");
ch = getchar();
while (ch < '0' || ch > '9')
{
ch = getchar();
}
n = 0;
while (ch >= '0' && ch <= '9')
{
n = n * 10 + (ch - '0');
ch = getchar();
}
printf("%d", n);
return 0;
}
