问2个问题...高手进...
c语言吧
全部回复
仅看楼主
level 1
二战饭 楼主
1.用一元人民币换成一分,两分,五分的所有悦换方案.2.求0到9可以组成多少个没有重复的三位偶数.
2006年02月04日 03点02分 1
level 2
第一题用递归可以搞定#include
int money[3]={1,2,5};int rec[100];void dfs(int remain,int last,int n){int i;if(remain<0)return;if(!remain){for(i=0;i
2006年02月04日 03点02分 2
level 0
//用一元人民币换成一分,两分,五分的所有悦换方案#include "stdio.h"void main(){int i,j,k,z=0;for(i=1;i<100;i++)for(j=1;j<50;j++)for(k=1;k<20;k++)if(1*i+2*j+k*5==100){printf("1=%d,2=%d,5=%d\n",i,j,k);z++;}printf("z=%d",z);}
2006年02月05日 05点02分 3
level 1
我也来试一下,大家看看对不对。其实,这两题在教科书里都有类似的例题。第一题:我认为用for循环比较容易,主要是缩小控制变量的范围。/*exchange one yuan*/#include
void main(){ int i.j,k,count=0; for (i=0;i<=100;i++) for (j=0;j<=50;j++) for (k=0;k<=20;k++)if (i+2*j+5*k==100) printf("Solution %d is %d(one) %d(two) %d(five).\n",++count,i,j,k);}第二题:我做得可能比较烦,不知道有没有简单一点的。/*form the even*/#include
void main(){ int i,j,k,count=0; for (i=1;i<=9;i++) for (j=0;j<=9;j++) if (j!=i) for (k=0;k<9;k+=2) if (k!=i&&k!=j) printf("Solution %d is %d%d%d.\n",++count,i,j,k); }请问,可不可以i==k==j
2006年02月05日 07点02分 4
level 1
第一道思路和三、四楼一致就不写了写第二道吧 #include
void main() { int i,ge,shi,bai,count=0; printf("\nOUSHU shi:\n"); for (i=102;i<=999;i=i+2) {bai=i/100; shi=i/10%10; ge=i%10; if(ge==shi||ge==bai||shi==bai) continue; printf("%6d",i); count++; }printf("\ngongyou: %d\n",count);}
2006年02月09日 09点02分 5
1