题解 1014: [编程入门]阶乘求和

来看看其他人写的题解吧!要先自己动手做才会有提高哦! 
返回题目 | 我来写题解

筛选

C语言程序设计教程(第三版)课后习题6.4 (C语言代码)

解题思路:这道题就是按照一般的思路,通过循环来实现一个数的阶乘,再通过循环相加来得到结果,但是,一开始在DEV中编译通过,但后来通过检查,发现在输入n=19时是一个负数,就说明出错,是所输出的数超出最大限,故将int改为longlong还有要将%d改为%lld,这是最关键的,就是输出有符号64位。

C语言程序设计教程(第三版)课后习题6.4 (C语言代码)

解题思路:这道题就是按照一般的思路,通过循环来实现一个数的阶乘,再通过循环相加来得到结果,但是,一开始在DEV中编译通过,但后来通过检查,发现在输入n=19时是一个负数,就说明出错,是所输出的数超出最大限,故将int改为longlong还有要将%d改为%lld,这是最关键的,就是输出有符号64位。

C语言程序设计教程(第三版)课后习题6.4 (C语言代码)

解题思路:因为这题理解了递归,虽然不一定要用递归做,之前我在变量前加long但是还是不停的报错直到我把函数也定义成long才成功,我觉得是虽然变量定义了long但是int的函数还是接收不了那么大的值所以函数也要定义成long。注意事项:这题主要就是考察数据的最大接收类型所以要有long参考代码:/*S