1. 程式人生 > >Problem B: C語言習題5.17--求兩數的商

Problem B: C語言習題5.17--求兩數的商

Problem B: C語言習題5.17--求兩數的商

Time Limit: 1 Sec  Memory Limit: 128 MB

Description

a/b計算商固然簡單方便,可如果商是無限小數或很長位數小數的情況,你該如何求指定位數的商呢?編寫函式void div(int m,int n,int digits), 求兩個整數mn的商,結果保留digits位小數。

#include <stdio.h>
void div(int m,int n,int digits);   /* 函式宣告 */
int main()
{
    int m,n,digits;
    scanf("%d%d%d",&m,&n,&digits);
    div(m,n,digits);
    return 0;
}
主程式已給出,請完成div函式並提交

Input

整數mn,小數位數dights

Output

Sample Input

1 21 30

Sample Output

0.047619047619047619047619047619

HINT

參考答案:

#include <stdio.h>
void div(int m,int n,int digits);   /* 函式宣告 */
int main()
{
    int m,n,digits;
    scanf("%d%d%d",&m,&n,&digits);
    div(m,n,digits);
    return 0;
}
void div(int m,int n,int digits)
{
    int i,s,f;
    s=m/n;
    printf("%d",s);
    if(digits==0) return;
    printf(".");
    f=m%n;
    for(i=1;i<=digits;i++)
    {
        f*=10;
        s=f/n;
        printf("%d",s);
        f%=n;
    }
  }

程式設計軟體及視訊教程下載:點選開啟連結