C语言必会面试题(3、耶稣有13个门徒,当中有一个就是出卖耶稣的叛徒,请用排除法找出这位叛徒:13人围坐一圈,从第一个開始报号:1,2,3,1,2,3...。凡是报到“3”就退出圈子,...)

3、耶稣有13个门徒。当中有一个就是出卖耶稣的叛徒,请用排除法找出这位叛徒:13人围坐一圈,从第一个開始报号:1。2,3。1,2,3...。

凡是报到“3”就退出圈子。最后留在圈子内的人就是出卖耶稣的叛徒。请找出它原来的序号。

int a[13] = {1,2,3,4,5,6,7,8,9,10,11,12,13};
    int number = 13;//记录当前人数
    int count = 0;//1,2,3报数
    int i = 0;
    while (number > 1) {
        if (a[i] != 0) {
            count++;
        }
        if (count == 3) {
            a[i] = 0;//剔除的人
            count = 0;
            number--;
        }
        i++;
        if (i == 13) {
            i = 0;
        }
      }
    for ( i = 0; i < 13; i++) {
        if (a[i] > 0) {
            printf("%d", a[i]);
        }
    }
时间: 2024-08-05 19:17:25

C语言必会面试题(3、耶稣有13个门徒,当中有一个就是出卖耶稣的叛徒,请用排除法找出这位叛徒:13人围坐一圈,从第一个開始报号:1,2,3,1,2,3...。凡是报到“3”就退出圈子,...)的相关文章

C语言必会面试题(3、耶稣有13个门徒,其中有一个就是出卖耶稣的叛徒,请用排除法找出这位叛徒:13人围坐一圈,从第一个开始报号:1,2,3,1,2,3...。凡是报到“3”就退出圈子,...)

3.耶稣有13个门徒,其中有一个就是出卖耶稣的叛徒,请用排除法找出这位叛徒:13人围坐一圈,从第一个开始报号:1,2,3,1,2,3....凡是报到"3"就退出圈子,最后留在圈子内的人就是出卖耶稣的叛徒.请找出它原来的序号. int a[13] = {1,2,3,4,5,6,7,8,9,10,11,12,13}; int number = 13;//记录当前人数 int count = 0;//1,2,3报数 int i = 0; while (number > 1) { if

题目: 耶稣有15个门徒,其中有一个就是出卖耶稣的叛徒,请用排除法找出这位叛徒:15人围坐一圈,从第一个开始报号:1,2,3,1,2,3……,凡是报到“3”就退出圈子,最后留在圈内的人就是出卖耶稣的叛徒,请找出它原来的序号。(用C语言)

#include <stdio.h> #define M 15   //M表示人数,N表示报号退出的数字 int main() { int  str[M]; for(int a = 0;a<M;a++)   //for循环赋值 { str[a]=a+1; } int number = M,count = 0,i =0; while (number > 1)  //直到只剩一人退出循环 { if (str[i] != 0)//最后没有的时候就不用计算了 count++; if (co

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

int a[13] = {1,2,3,4,5,6,7,8,9,10,11,12,13}; int number = 13; //记录圈内剩余的人数 int count = 0; //通过计算器来模拟报数 int i = 0; //循环变量 while (number > 1) { if (a[i] != 0) { count++; } if (count == 3) { a[i] = 0; //让该元素置0,模拟踢出圈子 count = 0; //然后计数器重新归0 number--; //踢出

Linux运维MySQL必会面试题100道

老男孩教育Linux运维班MySQL必会面试题100道 (1)基础笔试命令考察 (要求:每两个同学一组,一个口头考,一个上机实战作答,每5个题为一组,完成后换位) 1.开启MySQL服务 2.检测端口是否运行 3.为MySQL设置密码或者修改密码. 4.登陆MySQL数据库. 5.查看当前数据库的字符集 6.查看当前数据库版本 7.查看当前登录的用户. 8.创建GBK字符集的数据库oldboy,并查看已建库完整语句 9.创建用户oldboy,使之可以管理数据库oldboy 10.查看创建的用户o

(转)Linux运维MySQL必会面试题100道

老男孩教育Linux运维班MySQL必会面试题100道 (1)基础笔试命令考察 (要求:每两个同学一组,一个口头考,一个上机实战作答,每5个题为一组,完成后换位) 1.开启MySQL服务 2.检测端口是否运行 3.为MySQL设置密码或者修改密码. 4.登陆MySQL数据库. 5.查看当前数据库的字符集 6.查看当前数据库版本 7.查看当前登录的用户. 8.创建GBK字符集的数据库oldboy,并查看已建库完整语句 9.创建用户oldboy,使之可以管理数据库oldboy 10.查看创建的用户o

C语言:从p所指字符串中找出ASCII码最大的字符,将其放在第一个位置上,并将该字符前的原字符向后顺序移动。

//fun函数:从p所指字符串中找出ASCII码最大的字符,将其放在第一个位置上,并将该字符前的原字符向后顺序移动. 1 #include <stdio.h> 2 void fun( char *p ) 3 { char max,*q; int i=0; 4 max=p[i]; 5 while( p[i]!=0 ) 6 { if( max<p[i] ) 7 { max=p[i]; 8 /**********found**********/ 9 q = p + i;//先找到最大值,记录最

cocos2d-x 3.0游戏实例学习笔记《卡牌塔防》第一步---開始界面&amp;amp;关卡选择

/* 说明: **1.本次游戏实例是<cocos2d-x游戏开发之旅>上的最后一个游戏,这里用3.0重写并做下笔记 **2.我也问过木头本人啦.他说:随便写,第一别全然照搬代码:第二能够说明是学习笔记---好人 **3.这里用cocos2d-x 3.0版本号重写,非常多地方不同.可是从重写过程中也非常好的学习了cocos2d-x */ ***每一步相应的全部代码以及用到的资源都会打包在最后给出 ***为避免代码过多.每一步的代码都做了标记--一看就晓得是第几步实现的避免出错改不回去(难不成还用

改变,从跨出第一步開始——记海大ITAEM团队首次IT讲座掠影

之前以前写了"行动带来力量,周三(5月7日)晚IT讲座通知",昨晚已经跨出了第一步.让我们还是看举办者骆宏的QQ空间的文字吧.尽管未能到现场助兴,但看着海大学子在不断挑战自己,进而"找到你自己的心声,并激励他人去寻找他们的心声"(<高效能人士的第八个习惯>).加油! 下面文字摘自:软件1112-骆宏,骆宏CSDN博客地址(http://blog.csdn.net/u010469003 ). 尽管我讲的一般,可是我还是非常开心.我看到了非常多和我一样,渴望

linux批量分发必会面试题,通过邮件反馈结果。

请准备三台linux机器为别为A,B,C,要求实现以下内容1.用自己的名字用户完成一把钥匙开多把锁(A,钥匙,B,C锁)的免密码登录部署场景该题在生产环境中的用途为:批量分发数据,批量发布程序代码,批量控制管理等. 大型批量管理软件pupet/saltstack2.在1题的前提下同样用自己的名字用户完成多把钥匙开一把锁(B,C钥匙,A锁)的免密码登录B--AC--A一题中我们在A创建了锁和钥匙,所以B和C要控制A就先把钥匙发给B和C,因为A本地的锁还不正常,就像A给B和C发公钥一样给自己再发一份