C語言面試題 耶穌問題

2021-06-22 23:26:38 字數 754 閱讀 6814

//   耶穌有13個門徒,其中有乙個就是出賣耶穌的叛徒,請用排除法找出這位叛徒:13人圍坐一圈,從第乙個開始報號:1,2,3,1,2,3...。凡是報到「3」就退出圈子,最後留在圈子內的人就是出賣耶穌的叛徒。請找出它原來的序號。

//解題思路:

//(1)如何表示13個人? 通過陣列表示,有13個元素,賦初值是,可以賦值為1~13;

//(2)如何描述報數? 使用count值統計當前是第幾個人?

//(3)如何將人踢出,標示已經死掉的人? 將元素的值置為0.

//(4)如何及時獲取當前活著的人?變數number用來記錄當前活著的人

//(5)使用哪種迴圈結構? 採用while

//(6)迴圈條件是什麼?當前活著的人數大於1

//1. number > 1

//(7)如何迴圈報數? 迴圈變數 i,記錄當前第幾個在報數,如果到最後乙個人,報數完成之後,讓第乙個人繼續報數,i=0.

int a[13] = ;

int count = 0;//用來記錄報數

int number = 13; //用來記錄活著的人;

int i = 0;//記錄第幾個人正在報數

while (number > 1)

if (count == 3)

i++;//記錄報數的下乙個人

if (i == 13)

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

}

C語言面試題

基礎篇 1 區域性變數能否和全域性變數重名?可以2 如何引用乙個已經定義過的全域性變數?直接呼叫並初始化 3 全域性變數可不可以定義在可被多個.c檔案包含的標頭檔案中?為什麼?可以,6 堆和棧有什麼區別?7 什麼是預編譯,何時需要預編譯 8 c和c 中的struct有什麼不同?9 memset me...

C語言面試題

1.求某一年的某一天 includestruct sdate int main int i 0,nday dt.nday while i2 nday printf 這是 d年的第 d天 n dt.nyear,dt.nday return 0 將列印和演算法抽象成不同函式 includestruct ...

C語言面試題

1.要求使用一維陣列,輸入10名同學的序號和成績,並進行排序。題目1196 成績排序 題目描述 用一維陣列儲存學號和成績,然後,按成績排序輸出。輸入 輸入第一行包括乙個整數n 1 n 100 代表學生的個數。接下來的n行每行包括兩個整數p和q,分別代表每個學生的學號和成績。輸出 按照學生的成績從小到...