原创 闫小林 C语言入门到精通 1月5日
收录于话题
#C语言实战练习
103个
“要成为绝世高手,并非一朝一夕,除非是天生武学奇才,但是这种人…万中无一”
——包租婆
这道理放在C语言学习上也一并受用。在编程方面有着天赋异禀的人毕竟是少数,我们大多数人想要从C语言小白进阶到高手,需要经历的是日积月累的学习。那么如何学习呢?当然是每天都练习一道C语言题目!!
作者
闫小林
白天搬砖,晚上做梦。我有故事,你有酒么?
例53:C语言编程求1!+2!+3!+...20!
解题思路:sum不应该定义为int或者long型,假如使用的编译器是Visual C++6.0时,int和long型数据在内存都占4个字节,数据的范围在 -21亿~21亿。 如果将sum定义为double型,以得到更多的精度。在输出时,用22.15e格式,使数据宽度为22,数字部分中小数位数为15位。
源代码演示:
#include<stdio.h>//头文件
int main()//主函数
{
double sum=0,temp=1;//双精度浮点型变量
int i;//定义整型变量
for(i=1;i<=20;i++)//for循环
{
temp=temp*i;
sum=sum+temp;
}
printf("结果:%22.15e\n",sum);//输出结果,注意输出的格式
return 0;//主函数返回值为0
}
编译运行结果如下:
结果:2.561327494111820e+018
--------------------------------
Process exited after 1.94 seconds with return value 0
请按任意键继续. . .