最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語言計(jì)算大數(shù)階乘的方法

 更新時(shí)間:2021年05月09日 07:08:20   作者:l455702707  
這篇文章主要為大家詳細(xì)介紹了C語言計(jì)算大數(shù)階乘的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了C語言計(jì)算大數(shù)階乘的具體代碼,供大家參考,具體內(nèi)容如下

問題描述

輸入一個(gè)正整數(shù)n,輸出n!的值。
其中n!=1*2*3*…*n。

算法描述

n!可能很大,而計(jì)算機(jī)能表示的整數(shù)范圍有限,需要使用高精度計(jì)算的方法。使用一個(gè)數(shù)組A來表示一個(gè)大整數(shù)a,A[0]表示a的個(gè)位,A[1]表示a的十位,依次類推。
將a乘以一個(gè)整數(shù)k變?yōu)閷?shù)組A的每一個(gè)元素都乘以k,請(qǐng)注意處理相應(yīng)的進(jìn)位。

輸入格式

輸入包含一個(gè)正整數(shù)n,n<=1000。

輸出格式

輸出n!的準(zhǔn)確值。

樣例輸入

10

樣例輸出

3628800

#include <stdio.h>
#define N 10000
int main()
{
 int a[N]={1};
 int k=0,l=1,n;
 int i,j;
 scanf("%d",&n);
 for(i=1;i<=n;i++)
 {
  for(j=0;j<l;j++)
  {
   a[j]=a[j]*i+k;
   k=a[j]/10000;
   a[j]=a[j]%10000;
  }
  if(k)
  {
   a[j]=k;
   l++;
   k=0;
  }
 }
 printf("%d",a[l-1]);
 for(i=l-2;i>=0;i--)
  printf("%04d",a[i]);
 printf("\n");
 return 0;
}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

连平县| 井研县| 广丰县| 阳泉市| 赫章县| 宁蒗| 宜都市| 龙游县| 随州市| 策勒县| 富平县| 山阴县| 平远县| 松阳县| 江达县| 原阳县| 榆树市| 连州市| 油尖旺区| 蓬莱市| 灵武市| 广宁县| 隆德县| 沧源| 贡觉县| 房山区| 右玉县| 南乐县| 临朐县| 沙坪坝区| 友谊县| 象山县| 中方县| 寿光市| 东乌珠穆沁旗| 延安市| 安溪县| 岫岩| 洛浦县| 湘阴县| 龙井市|