1. 程式人生 > >2-5 分數化小數

2-5 分數化小數

分數化小數

題目

輸入正整數a,b,c,輸出a/b的小數形式,精確到小數點後c位。a,b≤10^6,c≤100.輸入包含多組資料,結束標記為a=b=c=0

樣例輸入:
>

1 6 4
0 0 0

樣例輸出:

Case 1: 0.1667

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>


int main(){
    int a,b,c,markint,i=0;
    int mark;
    while(scanf("%d
%d %d"
,&a,&b,&c)==3){ i++; if(a==0&&b==0&&c==0) break; printf("Case %d: ",i); //整數部分判斷 mark=a; markint=mark/b; printf("%d",markint); mark-=markint*b; printf("."); //小數部分判斷 for(int count1=0;count1<c-1
;count1++){ mark*=10; markint=mark/b; printf("%d",markint); mark-=markint*b; } //四捨五入 mark*=10; markint=mark/b; mark-=markint*b; mark*=10; if(mark/b<5) printf("%d",markint); else printf
("%d",markint+1); printf("\n"); } }