为什么我运行直接没有结果就结束了

#include<stdio.h>
#include<math.h>
int main()
{
int n,i=1;double sum=1,a=1,b,x;printf("请输入n的值:");scanf("%d",&n);getchar();printf("请输入x的值:");scanf("%f",x);for(i=1,a=1;i<=n;i++){a*=i;b=pow(x,i);sum+=b/a;}printf("e^x=%f",sum);return 0;}
scanf("%f",&x);