#include<stdio.h>main(){ float x; int y,i50,i20,i10,i5,i1,i050,i010; do{ printf("Input the salery:\n"); scanf("%f",&x); if(x<=0) printf("Data ERROR!"); }while(x<=0); y=(int)((x+0.0005)*100);//消除计算机在处理浮点数时产生的误差,如:程序main() // { float a=2.50; // printf("%f",a); // } //输出结果是2.499997;与2.50有一定误差. printf("100元的张数:%3d\n",y/10000); y%=10000; i50=y/5000;//50的张数 i20=(y%5000)/2000;//20的张数 i10=((y%5000)%2000)/1000;//10的张数 y%=1000; i5=y/500; i1=(y%500)/100; y%=100; i050=y/50; i010=(y%50)/10; y%=10; printf("50元的张数:%3d\t20元的张数:%3d\t10元的张数:%3d\n",i50,i20,i10); printf("5元的张数:%3d\t1元的张数:%3d\n",i5,i1); printf("5角的张数:%3d\t1角的张数:%3d\n",i050,i010); printf("欠:0.0%1d元\n",y); getch();}

评论