/*将一个0-1之间的分数除到指定的小数位数,若为有限小数,后面的0则不输出*/
#include <stdio.h>
void roundingNumber(int a,int b,int num);
int main(){
int a,b,num;
scanf("%d/%d",&a,&b);
printf("请输入需要输出小数点后几位:\n");
scanf("%d",&num);
a=a*10;
roundingNumber(a,b,num);
return 0;
}
void roundingNumber(int a,int b,int num){
int i;
printf("0.");
int arr[num];
for(i=0;i<num;i++){
arr[i]=a/b;
if(a%b==0){
printf("%d",arr[i]);
break;
}else{
printf("%d",arr[i]);
}
a=a%b*10;
}
}
运行结果如下: