C之絕妙(一道很NB的面試題)

2021-05-27 15:45:50 字數 808 閱讀 6131

*有時候,有些面試題是很是無厘頭,這不,又有乙個,還記得小時候玩的的「火柴棍遊戲」嗎,就是移動一根火柴棍改變乙個圖或字的遊戲。程式面試居然也可以這麼玩,看看下面這個火柴棍式的程式面試題吧。

下面是乙個c程式,其想要輸出20個減號,不過,粗心的程式設計師把**寫錯了,你需要把下面的**修改正確,不過,你只能增加或是修改其中的乙個字元,請你給出三種答案。

*/

int n = 20;

for(int i = 0; i < n; i--)

/*不要以為這題不是很難,我相信你並不那麼容易能找到3種方法。我覺得,如果你能在10分鐘內找出這三種方法,說明你真的很聰明,而且反應很快。當然,15分鐘內也不賴。不過,你要是30分鐘內找不到三種方法,當然,不說明你笨了,最多就是你的反應還不夠快。嘿嘿。就當是玩玩吧。

下面是我的答案:

//第一種解法:在for迴圈中給n加乙個負號

for(int i = 0; i < -n; i--)

//第二種解法:把 n 初始化成 -20

int n = -20;

//第三種解法:把for迴圈中的 i 初始化成40

for(int i = 40; i < n; i--)

不過,我要告訴你,以上這些答案都不對(我就知道你會偷看答案的),不過,順著這些思路走很接近了。呵呵。

下面寫下正確答案——

------------

其它相關的變種題如下:

通過修改、增加乙個字元,讓其輸出21個減號

通過修改、增加乙個字元,讓其只輸出1個減號

通過修改、增加乙個字元,讓其不輸出減號*/

js一道很誇張的面試題

如題 var a 0 if true a 21 console.log 裡面 a console.log 外部 a 一開始 我認為結果很簡單 就是2個21 後來用谷歌瀏覽器 一列印 結果 竟然是 21和1 唯一的解釋 預解析的時候 應該是這樣的 var a a 0 0function a a 1 c...

一道c 面試題

float a 1.0f cout int a endl cout int a endl int a 是什麼意思?cout boolalpha int a int a endl float b 0.0f cout int b endl cout int b endl cout boolalpha i...

一道面試題

一道面試題 射擊運動員10發打中90環有多少種可能,請編寫程式計算出來,並列印出結果,0環和10環均有效。打中90環就是沒打中10環,所以打中90環跟打中10環的可能性是一樣的。然後開始遞迴狂打槍,一到10就記錄 if params i 10 在迴圈的控制中已經排除了大於10的可能性 i 10 pa...