C語言中兩個整型資料的高精度除法__C語言

來源:互聯網
上載者:User

演算法:

首先輸出x/y的整數部分,對其餘數u=x%y試商n次,以滿足精度要求。

每次試商:x=u*10為被除數,y為除數,商x/y(整數)作為結果的一位列印輸出,餘數為u=x%y。若u不等於0,繼續試商,直到u=0或是達到試商的n位為止。

演算法來自:楊克昌編著《電腦程式設計典型例題精解》之高精度窗,國防科技大學出版社出版。

/*兩個整數資料的高精度除法*/
#include<stdio.h>
int main()
{
long int x,y,u,n;
printf("請輸入兩個整數:\n");
scanf("%d%d",&x,&y);
printf("您想輸出小數點後幾位。(如果可以整除,只需要輸出小數點後一個0)\n");
scanf("%d",&n);
printf("結果:\n");
printf("%d/%d=\n%d.",x,y,x/y);
   while(n--)
   {
    u=x%y;
    x=u*10;
    printf("%d",x/y);
    if(u==0)
     break;
    if(n%10==0)
     printf("\n");
   }
   printf("\n");
   return 0;
}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.