#include
#include
#include
int main()
{
int x,fen5,fen2,fen1,total,count;
scanf("%d",&x);
for(fen5=(x-3)/5;fen5>=1;fen5--)
{
for(fen2=((x-5*fen)-1)/2,count=0;fen2>=1;fen2--)
{
fen1=x-5*fen5-2*fen2;
total=fen1+fen2+fen5;
count++;
printf("fen5:%d, fen2:%d, fen1:%d, total:%d\n",fen5,fen2,fen1,total);
}
}
printf("count = %d",count);
return 0;
}
你的代码逻辑本身是错误的。
这其实至少一个简单的除数计算:
#include <stdio.h>
int main()
{
int fen5, fen2, fen1, num, count = 0;
scanf("%d", &num);
for (fen5 = num / 5; fen5 > 0; fen5--)
{
int remain = num - fen5 * 5;
for (fen2 = remain / 2; fen2 > 0; fen2--)
{
fen1 = remain - 2 * fen2;
if (fen1 > 0)
{
printf("fend5:%d, fen2:%d, fen1:%d,total:%d\n",
fen5, fen2, fen1, fen5 + fen2 + fen1);
count++;
}
}
}
printf("count = %d\n", count);
getchar();
return 0;
}
如果对您有用,望采纳。