第二题,我忘记什么叫素数啦,sorry
告诉你我的思路吧,也许不对的哦
先找到一个最大的小于N的素数a,然后判断(N-a)是不是一个素数。 如果是: 则输出;终止程序。 如果不是:则继续找下一个仅仅小于a的素数。然后再循环判断即可。
放心啦,肯定可以找到这样的两个素数的,因为这个就是传说中的“哥德巴赫猜想”!
淘宝杜琨
#include"stdio.h" main() { long rmb1=0,rmb2=0,rmb5=0,rmb10=0,rmb20=0,rmb50=0,rmb100=0; long sum,tmp; printf("please put in the amount:"); scanf("%ld",&sum); tmp=sum; while(sum>=100) /*上边我写的第一题的程序要改这里哦~~呵呵,循环体如果镶嵌的话,回出现多1的情况啦*/ {sum-=100; rmb100++; } while(sum>=50) {sum-=50; rmb50++; } while(sum>=20) {sum-=20; rmb20++; } while(sum>=10) {sum-=10; rmb10++; } while(sum>=5) {sum-=5; rmb5++; } while(sum>=2) {sum-=2; rmb2++; } rmb1=tmp-rmb100*100-rmb50*50-rmb20*20-rmb10*10-rmb5*5-rmb2*2; printf("need 100rmb:%ld\n",rmb100); printf("need 50rmb:%ld\n",rmb50); printf("need 20rmb:%ld\n",rmb20); printf("need 10rmb:%ld\n",rmb10); printf("need 5rmb:%ld\n",rmb5); printf("need 2rmb:%ld\n",rmb2); printf("need 1rmb:%ld\n",rmb1);
getch(); }