题解 1148: C语言训练-计算1977!*

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

筛选

1148: C语言训练-计算1977!

摘要:解题思路:注意事项:参考代码:#include<stdio.h>#define MAX 10000int main(){    int i, j, tmp, up,n;    char a[MAX+1……

1148: C语言训练-计算1977!*

摘要:解题思路:注意事项:参考代码:#include<stdio.h>int a[10000],i,j,digit=1,sum,k;void fun1(){    a[0]=1;    for(i=2;i<……

1148计算1977!

摘要:#include<stdio.h> #define N 10000 int f(int sum) { int flag=1; while(sum>=10) { sum=sum/……

C语言训练-计算1977!*

摘要:解题思路:        这道题其实可以用竖式乘法表的形式进行进位,因为1977!已经超过了long long int所能表达的最大范围,所以这道题只能用数组来把1977!的每一个位数表示出来,每一格……

1977!c语言ssssssssssssss

解题思路:用数组表示数,每一位都乘下一个数,之后再从最低位考虑进位注意事项:之前最后一位数没有考虑,这是一个很大的数,小点的阶乘不用考虑,但是之后大阶乘答案一直不对,就是没有考虑最后一位数最后的范围超过了可以表示的范围,所以对最后一位数也要将每个数分开存在数组中参考代码:#include"stdio.
优质题解

C语言训练-计算1977!,c语言的简单思路

###解题思路​因为这道题的位数已经超过的longlongint最大数,所以这道题的思路应该按存放在数组的思想去做这一道题,因为这个位数实在是太大了,我们只能用i(1~1977)去乘以上一个数值的每一个数,,如假设a现在是4!==24,则a[1]=2,

C语言训练-计算1977!*-题解(C语言代码)

解题思路:我把1977!分为很多个五位数,以数组承载这些五位数,随着循环,将每一个数组元素乘以i,当一个数组元素大于100000时,取它的十万位以下的数字为该元素,十万位及以上加至下一个数组元素。如a[0]=1304000,使a[0]=4000,a[1]=a[1]+13。

C语言训练-计算1977!*-题解(C语言代码)

#思路和第一名的那位大佬一样##代码中有解释解题思路:由于数字过于庞大,任何类型的变量都容纳不了,所有就需要用到数组;考虑到平时我们计算乘法时都是用乘数乘以每个数字,然后个位满10进一位,接着计算下一位;例如:18*8——8,64——8+6,4——1,4,4从这个例子可以看出,