求各位,按照慕恺课上敲的

问题遇到的现象和发生背景 这个代码哪出错了?求
问题相关代码,请勿粘贴截图 #include <stdio.h>

int main()
{

int n;
int fact =1;;
int i=1;

scanf ("%d", &i);

for (i=1; i<=n; i++)
{fact*=i;}

printf ("%d!= %d\n ",n ,fact );

return 0;

jie

运行结果及报错内容 无论输yun入什么,皆为16!
我的解答思路和尝试过的方法 一般般
我想要达到的结果能正常运行

scanf应该是要获取输入的值赋值给n吧,你写的赋值给i了。
应该是 scanf("%d", &n);