找零钱

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\n",ch);

	for(int i=0;i<=5;i++)

	{

		if(p[i]!=0)

		{

			printf("%d*%d ",m[i],p[i]);

		}

	}

	//printf("=%d\n",ch);

	return 0;

}

 

你可能感兴趣的:(找零钱)