作业帮 > 综合 > 作业

c语言--猴子分椰子 怎么输入?

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/29 00:29:21
c语言--猴子分椰子 怎么输入?
一个孤岛,发现岛上孤零零的,幸好有有棵椰子树,还有一只猴子?
大家把椰子全部采摘下来放在一起,但是天已经很晚了,所以就睡觉先.
晚上某个家伙悄悄滴起床,悄悄滴将椰子分成5份,结果发现多一个椰子,顺手就给
了幸运的猴子,然后又悄悄滴藏了一份,然后把剩下滴椰子混在一起放回原处,最后
还是悄悄滴回去睡觉了.
过了会儿,另一个家伙也悄悄滴起床,悄悄滴将剩下滴椰子分成5份,结果发现多一
个椰子,顺手就又给了幸运的猴子,然后又悄悄滴藏了一份,把剩下滴椰子混在一起
放回原处,最后还是悄悄滴回去睡觉了.
又过了一会 ...
...
又过了一会 ...
总之5个家伙都起床过,都做了一样的事情 :blush;
早上大家都起床,各自心怀鬼胎的分椰子了,这个猴子还真不是一般的幸运,因为这
次把椰子分成5分后居然还是多一个椰子,只好又给它了.
这堆椰子最少有多少个?
我用简单的IF判断语句这样写 为什么显示不出来真确结果啊.
#include "stdio.h"
void main()
{long a,b,c,d,e,f,g,m;
a=1;
a1:
b=5*a+1; /*
* 假设 早上大家都起床,分椰子,每人只分到a个
* 幸运的猴子又得到一个
* 那么早上最少还应该有 5*a+1个椰子
*/
m=b%4;
if(m=0)
c=m*5+1; /* 最后一个人起床时,分椰子5份藏了一份,剩下的是4份,所以递回时除4乘5在加上给猴子的1个是起床前的数量*/
goto a2;
else a=a+1;
goto a1;
a2:
m=c%4;
if(m=0)
d=m*5+1; /* 倒数第二个人起床时,分椰子5份藏了一份,剩下的是4份,所以递回时除4乘5在加上给猴子的1个是起床前的数量*/
goto a3;
else a=a+1;
goto a1;
a3:
m=d%4;
if(m=0)
e=m*5+1;/* 倒数第三个人起床时,分椰子5份藏了一份,剩下的是4份,所以递回时除4乘5在加上给猴子的1个是起床前的数量*/
goto a4;
else a=a+1;
goto a1;
a4:
m=e%4;
if(m=0)
f=m*5+1;/* 倒数第四个人起床时,分椰子5份藏了一份,剩下的是4份,所以递回时除4乘5在加上给猴子的1个是起床前的数量*/
goto a5;
else a=a+1;
goto a1;
a5:
m=f%4;
if(m=0)
g=m*5+1;/* 倒数第五个人--即第一个人起床时,分椰子5份藏了一份,剩下的是4份,所以递回时除4乘5在加上给猴子的1个是起床前的数量*/
printf("最后每人%ld,个最初%ld个",&a,&g);
else a=a+1;
goto a1;
}
怎么程序里还有goto啊!用goto可能会产生问题的.