首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

c语言练习题,求大神指点

2013-12-11 
c语言习题,求大神指点!1、10个小孩分糖果十个小孩围成一圈分糖,老师给第一个小孩10块,第二个小孩2块,第三个

c语言习题,求大神指点!
1、10个小孩分糖果
十个小孩围成一圈分糖,老师给第一个小孩10块,第二个小孩2块,第三个小孩8块,第四个小孩22块,第五个小孩16块,第六个小孩4块,第七个小孩10块,第八个小孩6块,第九个小孩14块,第十个小孩20块,然后所有小孩同时将自己手中的一半分给右边的小孩,若是奇数可以问老师要一块,问经过几次调整之后大家手中糖一样多?每人手中有多少糖?

//十个小孩围成一圈分糖,老师给第一个小孩10块,第二个小孩2块,第三个小孩8块,第四个小孩22块,
//第五个小孩16块,第六个小孩4块,第七个小孩10块,第八个小孩6块,第九个小孩14块,第十个小孩20块,
//然后所有小孩同时将自己手中的一半分给右边的小孩,若是奇数可以问老师要一块,
//问经过几次调整之后大家手中糖一样多?每人手中有多少糖?
#include <stdio.h>
int n1[10]={10,2,8,22,16,4,10,6,14,20};
int n2[10];
int i,c,n;
int main() {
    for (c=1;c<=1000;c++) {
        for (i=0;i<9;i++) {
            n2[i]=n1[i+1]/2+n1[i]/2;
        }
        n2[9]=n1[0]/2+n1[9]/2;
        for (i=0;i<10;i++) {
            if (n2[i]%2==1) n2[i]++;
            n1[i]=n2[i];
        }
        n=n1[0];
        for (i=1;i<10;i++) if (n!=n1[i]) break;
        if (i>=10) break;
    }
    printf("%d,%d\n",c,n);
    return 0;
}
//16,18
//

热点排行