日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

高精度数据×长整数

發布時間:2023/12/15 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 高精度数据×长整数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

基本思路

①每次乘數的一位與被乘數相乘的個位結果在最終結果中都不變,所以每次個位數直接用數組記錄下來
②根據對乘法豎式的理解,每兩個懲罰結果(eg:被乘數的個位和十位分別與乘數相乘的結果加和,十位的相乘結果會比個位的要前移一位)這時,可以想成是上面的數去掉末位(eg:b/=10;)與下一個乘法結果相加,這樣就符合加法的正常思路。

#include<stdio.h> #include<string.h> int main() {long b,c,d;int a[256],i,j,n;char s1[256];printf("Input a great number:");scanf("%s",s1);//作為乘數printf("Input a long Intiger:");scanf("%d",&c);//作為被乘數n=strlen(s1);d=0;//表示進位,從0開始(一開始還沒有進位)//取出所有中間計算結果的個位for(i=0,j=n-1;i<n;i++,j--){b=(s1[j]-'0')*c+d;a[i]=b%10;d=b/10;}//排除所有中間乘法個位后的整數while(d!=0){a[n]=d%10;d/=10;n++;}//逆序輸出for(i=n-1;i>=0;i--){printf("%d",a[i]);}return 0; }

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的高精度数据×长整数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。