傳入字符串 打印N字圖形 該怎麼搞 用函數寫 具體圖形見下圖
觀察一下特點
1)字符串的長度為n,那麼就要輸出n行,且第i行的字符也就是字符串的第i個字符
2)每行的長度等於字符串的長度,除了第一行和最後一行之外,均有三個相同的字符。
3)每行有位置變化的字符,其位置從上到下在不斷右移,而這個字符的前後空格數量也是一個等差數列。
這意味著一個循環就可以搞定。
由1)可知需要循環n次,那麼字符串的長度n要先求出來。循環變量設置為行號line,從0到n-1。
由2)可知當line==0和line==n-1的時候需要特殊處理,先輸出一個該行對應的字符(字符串[line]),然後是空格,輸出的空格數量是n-2,再輸出一個對應的字符。
由3)可知當line從1循環到n-2的時候,對應每行的輸出數據應該是“字符1+空格1+字符2+空格2+字符3”,整行的長度為n,且字符1==字符2==字符3==字符串[line]。空格1對應的空格個數為line-1(第二行時line==1所以line-1==0也就是這個位置不會輸出空格,與實際相符),空格2對應的個數為n-3-(line-1)個(同理倒數第二行時這個位置不會輸出空格)。
然後你就可以循環了,處理任意長度的字符串均可,但要考慮控制台窗口的大小,太長的話輸出就亂掉了。