你最后输出的时候多输出了1个空格 最后的 cout<
#includeusing namespace std;double fact(int n){ if (n == 1 || n == 0) return 1; else return n * fact(n - 1);}void main(){ int b; cout << " "; cin >> b; fact(b); cout << fact(b) << endl;}