解题思路:t=t*i-----这一步就是计算1!,2!,....,20!各项的值
而k=k+t---则是计算他们的和
注意事项:1.结果太大,一种方法是用指数型式表达出来,这个可以自行下去在vc++6.0上自己编译
这个网页上显示的是错误的。
2.k不能定义为int或long型,因为他们在编译器中所占的字节数不太相同,但是都无法容纳所求的值,所以用所占字节数相对较多的double型,来求得更加精确的值。
参考代码:
#include<stdio.h>
int main()
{
double i,t=1,k=0;
for(i=1;i<=20;i++)
{
t=t*i;
k=k+t;
}
printf("%22.15e\n",k);
return 0;
}
0.0分
0 人评分
C语言训练-求s=a+aa+aaa+aaaa+aa...a的值 (C++代码)(手动优化一下计算)浏览:1277 |
高精度加法 (C++代码)(大数加法)浏览:915 |
C语言程序设计教程(第三版)课后习题10.7 (C语言代码)浏览:537 |
简单的a+b (C语言代码)浏览:573 |
关于C语言变量位置的问题浏览:272 |
打印十字图 (C语言代码)浏览:2700 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:504 |
循环入门练习6 (C语言代码)浏览:952 |
C语言程序设计教程(第三版)课后习题9.6 (C语言代码)浏览:579 |
2006年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:342 |