Q:输入实付钱数和应付钱数,输出应补钱数和每种面值纸币的张数,要求总张数最少。
S:
#include <stdio.h> int main(int argc, char *argv[]) { int c,b;//charge,bill int ch,v;//change int m[6]={100,50,20,10,5,1}; int p[6]; scanf("%d%d",&c,&b); v=ch=c-b; for(int i=0;i<=5;i++) { p[i]=v/m[i]; v=v%m[i]; } printf("%d ",ch); for(int i=0;i<=5;i++) { if(p[i]!=0) { printf("%d*%d ",m[i],p[i]); } } //printf("=%d ",ch); return 0; }