一道C++面試題,只能修改或者增加一個字符,給出至少三種修改方案

下面的程序實現連續打印20個減號,但是粗心的程序員把程序寫錯了,請你幫他改正,要求只能修改或者增加一個字符.至少給出三種修改方案.

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

看到這題一開始定勢思維了,只覺應該把i--改爲i++,可是這樣以來就改變了兩個字符了。

經過一番思考,我勉強想到了三種方法:

方法一:把i--改爲n--(改變一個字符)

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

方法二:把i<n改爲-i<n(添加一個字符)

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

方法一:把i<n改爲i+n(改變一個字符)

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

不知道還有沒有其他方法,望高手賜教

發佈了66 篇原創文章 · 獲贊 43 · 訪問量 47萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章