求高手指点,这几题错在哪儿,很纠结
1. 求1!+2!+....+20! 程序如下,结果总是不对,请问错在哪儿?#include<stdio.h>
#include<math.h>
int main()
{ double i,n,term=1,sum=1;
for(n=2;n<=20;n++)
{for(i=2;i<=n;i++)//先求i!
{term=term*i;
}
sum=sum+term;//叠加
}
printf("sum is %f",sum);
return 0;
}
2. 求a+aa+aaa+...+的和,a表示数字,n表示a的位数。。。为毛结果又不对,无比纠结,求大侠帮忙纠错
include<stdio.h>
#include<math.h>
int main()
{int a,n,s,i;
s=0;i=1;
scanf("a=%d,n=%d",&a,&n);
while(i<=n)
{s=s+a;
i=i+1;
a=a+a*pow(10,(i-1));
}
printf("s=%d\n",s);
return 0;
}