我正在用C編寫一個程序,首先提示用戶輸入一個整數,然後輸出兩個字符串:一個空格和一個變量編號,以便結果是一個正確的棱錐,像這樣:Printf C中的多個可變數字字符串
#
##
###
####
#####
######
的問題我已經駐留在我的for循環,這裏是什麼樣子: (n
是用戶提示的整數)
for (int i = 0 ; i < n ; i++)
{
printf("%c",n-1,' '); // printing the blank spaces gradually
printf("%c\n",i+2,'#'); // printing the hashes gradually
}
的想法是打印減少數量的空間和增量根據int減少哈希數。
P.S:請考慮幫我說我的代碼有什麼問題,而不是給我一個實際的新工作。
歡迎來到堆棧溢出!不幸的是,這不是一個好的問題,這不是一個家庭作業幫助網站,雖然你可以找到很多信息,可以幫助你在這裏做你的功課。作爲發佈代碼的一般規則,您需要將其格式化爲代碼,您需要說明具體的錯誤消息/問題是什麼,並且通常您需要給出一個最簡單的工作示例。您應該查看幫助中心的問題指南,以便您知道什麼是將來發布的合適問題。 (這個很可能會被關閉,我很抱歉地說。) –
這兩個'printf'調用實際上都會打印一次'(char)(n-1)'或'(char)(i + 2)'的值並忽略了其餘的論點。無論使用什麼makefile,只要你的編譯器支持它(或者調查你的編譯器提供的警告/警告級別選項)和'-Wextra',你應該至少在你的'cc'行中包含'-Wall'如果可能的話。這會在當前捕獲很多編碼錯誤,例如未使用的'printf'參數。一個常見的解決方案是在當前循環中打印'n-i-1'空格的循環,之後再打印另一個循環以打印'#''i'次。 –
我已經從與問題沒有直接關係的問題中刪除了一些額外的東西,並且還添加了我認爲您希望輸出看起來像的內容。 (如果我錯了,請修復它!) – immibis