不是很懂這個(gè)程序,請(qǐng)問有大佬路過(guò)給我講解一下么?
int i, j, k;
??? for(i=1; i<5; i++)
??? {
??????? /* 觀察每行的空格數(shù)量,補(bǔ)全循環(huán)條件 */
??????? for(j=i;j<5;j++) ?
??????? {
??????????? printf(" ");??? //輸出空格
??????? }
??????? /* 觀察每行*號(hào)的數(shù)量,補(bǔ)全循環(huán)條件 */
??????? for(k=0;k<2*i-1;k++)
??????? {
??????????? printf("*");?? //每行輸出的*號(hào)
??????? }
??????? printf("\n");???? //每次循環(huán)換行
??? }
2018-01-26
*****代碼一共兩層循環(huán),第一層控制行數(shù),第二層控制輸出。
第一層循環(huán)是控制行數(shù),如當(dāng)i=1,就是進(jìn)入第一行進(jìn)行輸出。
*****進(jìn)入第一層循環(huán)后,開始第二層循環(huán)。
首先是輸出空格,每行空格數(shù)遞減,第一行需要4個(gè)空格,第二行需要3個(gè)空格,以此類推,所以令j=i,隨著i的遞增,空格循環(huán)次數(shù)減小。
當(dāng)空格輸出完畢,則開始輸出*,當(dāng)i=1,k的值為1,由于k初值為0,所以會(huì)循環(huán)1次,也就是輸出1個(gè)*,到這里*循環(huán)結(jié)束,跳出for循環(huán),再執(zhí)行"\n"換行。
到這里i=1的循環(huán)結(jié)束,然后開始i=2的循環(huán)。
*****不知道看不看得懂啊。。。。。。