“火柴棍式”面試題

之前看到了這個題目,感覺挺有意思的,就整理一下,以便以後查看。

修改下面代碼中一個字符,使其輸出20個減號,請給出三種答案。要求 “ 只能增加或是修改其中一個字符”。

int n = 20;

for(int i = 0; i < n; i--)
{
	printf("-");
}

這道題看起來不難,但是需要對 for 循環有深入的理解,而且需要 發散思維。大家先自己 想想,然後看看能不能做出來。

答案:

//第一種解法:在for循環中給 i 加一個負號
for(int i = 0; -i < n; i--)
 
//第二種解法:在for循環中把 i-- 變成 n--
for(int i = 0; i < n; n--)
 
//第三種解法:把for循環中的 < 變成 +
for(int i = 0; i + n; i--)

感謝大家,我是假裝很努力的YoungYangD(小羊)

參考資料:
https://coolshell.cn/articles/3961.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章