//上机实验题3 -- 钱币兑换问题 #include<stdio.h> void fun(int n){ int x,y,z; int count = 0; for(z=0;z<=n/5;z++){ //5分钱币的的个数 0 ——n/5 for(y=0;y<=(n-5*z)/2;y++){ //2分钱币的个数 0 —— (n-5*z)/2 x = n - 5*z - 2*y; printf(" 兑法%d: ",++count); if(z != 0) printf("5分硬币%d个 ",z); if(y != 0) printf("2分硬币%d个 ",y); if(x != 0) printf("1分硬币%d个",x); } } printf(" 共有%d种兑法",count); } int main(){ int n = 10; fun(n); return 0; }