亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

大神求指教

完全沒看懂,特別是由數字到正三角形那塊

正在回答

2 回答

來我們來看看怎么思考,就是一行一行輸出空格或*嘛。仔細觀察??崭窨梢钥闯鲋鹦袦p少,*逐行增加。那么這兩個東西是跟著行數i變化的??崭窨梢钥闯雒考右恍猩僖粋€,第一行最多,為3個。那么可以這樣寫?for(? j=4-i ;? j>=0 ; j-- ) 。*每行都增加。下一行比上一行多兩個,很容易看出是2n-1的關系,所以可以這樣寫for( k=1 ;? k<=(2*i-1) ;? k++ ) 。怎么樣理解沒?沒理解可以再找我。

6 回復 有任何疑惑可以回復我~
#1

iifyou

第一行空格怎么是3??怎么看的?? 以第4行的*數為參考的話 空格不應該是6個嗎??
2019-08-07 回復 有任何疑惑可以回復我~
#2

慕前端8305597 回復 iifyou

假設這是一個123的循環,1循環i=1時,然后2循環j=i;j<5;j++這個執行代碼塊需要j=5時才跳出這個循環進入3循環,那么這是2循環相當與經歷了5-i次循環也就產生了5-i次空格
2019-08-16 回復 有任何疑惑可以回復我~

#include <stdio.h>

int main()

{

? ? int i, j, k;

? ? for(i=1; i<5; i++)

? ? {

? ? ? ? /* 觀察每行的空格數量,補全循環條件 */

? ? ? ? for(? ? j=4-i ;? j>=0 ;? j--? )??

? ? ? ? {

? ? ? ? ? ? printf(" ");? ? //輸出空格

? ? ? ? }

? ? ? ? /* 觀察每行*號的數量,補全循環條件 */

? ? ? ? for( k=1 ;? k<=(2*i-1) ;? k++? ? ?)?

? ? ? ? {

? ? ? ? ? ? printf("*");? ?//每行輸出的*號

? ? ? ? }

? ? ? ? printf("\n");? ? ?//每次循環換行

? ? }

? ? return 0;

}

為什么這樣不對

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
C語言入門
  • 參與學習       926906    人
  • 解答問題       21533    個

C語言入門視頻教程,帶你進入編程世界的必修課-C語言

進入課程

大神求指教

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號