耶稣有13个门徒,其中有一个就是出卖耶稣的叛徒,请用排除法找出这位叛徒:13人围坐一圈,从第一个开始报号:1,2,3,1,2,3...。凡是报到“3”就退出圈子,最后留在圈子内的人就是出卖耶稣的叛徒。

本文探讨了一种算法逻辑,用于在特定序列中找出指定条件下的报到者序号,涉及循环、条件判断和数组操作等核心概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    int  str[13] = {1,2,3,4,5,6,7,8,9,10,11,12,13};

    int number = 13,count = 0,i =0;

    while (number > 1) {    //number 表示人数

        if (str[i] != 0) {

            count++;

        }

        if (count == 3) {//如果count的值为3,则表示报到的数为"3"

            str[i] = 0; //此时将此人的值赋值为0,表示此人已经排除

            count = 0;//count重新赋值为0

            number--;//人数减1

        }

        i++;

        if (i ==13) {//由于是围成一圈,当值等于13时,强制将其设置为0

            i = 0;

        }

        }

    printf("出卖耶稣叛徒的序号为:");

    for (int i = 0; i< 13; i ++) {

        if (str[i] > 0) {

            printf("%d  ",str[i]);

        }

    }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值