這個程序怎么運行啊
#include <stdio.h>
int main()
{
??? int i, j, k;
??? for(i=1; i<5; i++)
??? {
??????? /* 觀察每行的空格數量,補全循環條件 */
??????? for(??? j=i;j<5 ;? j++? )?
??????? {
??????????? printf(" ");??? //輸出空格
??????? }
??????? /* 觀察每行*號的數量,補全循環條件 */
??????? for( k=0 ;k< 2*i-1;? k++??? )
??????? {
??????????? printf("*");?? //每行輸出的*號
??????? }
??????? printf("\n");???? //每次循環換行
??? }
??? return 0;
}
2015-12-27
這個程序難理解的地方大概就是第一個內循環 j=i 和第二個內循環k=i*2-1,實例過程如下(空格用s表示,換行n):
第一次循環:(外循環下同)
ssss*n ? ? ? ? ? ? ? ? ? 內循環 1,j=1,1<5,輸出4個空格,內循環2,k=1*2-1=1,輸出1*
第二次循環:
ssss*n???????????????????????? ? ?
sss***n ? ? ? ? ? ? ? ? ? 內循環1(第2次,下同),j=2,2<5,輸出3個空格,內循環2(第二次,下同),k=3 ? ? ? ?
第三次循環
ssss*n
sss***n
ss*****n ? ? ? ? ? ? ? ??內循環1(3),j=3,3<5,輸出2個空格,內循環2(3),k=5
第四次循環
ssss*n
sss***n
ss*****n
s*******n ? ? ? ? ? ? ? 內循環1(4),j=4,4<5,輸出1個空格,內循環2(4),k=7?
整個循環結束 ?#這是我的筆記 ? ? ?
2015-12-24
/* Note:Your choice is C IDE?
? ?*
? ***
?*****
*******
?*****
? ***
? ?*
*/
#include "stdio.h"
void main()
{
? ? int i,j,j1=5,k;//i:行, j:*的數量, k:空格數量
? ? for(i=1;i<5;i++)
? ? ? {for(k=i;k<4;k++)
? ? ? ? printf(" ");
? ? ? ? for(j=1;j<=i*2-1;j++)
? ? ? ? ?printf("*");
? ? ? ? printf("\n");
? ? ? }
? ? for(i=1;i<4;i++)
? ? ? {?
? ? ? for(k=i;k>0;k--)
? ? ? ?printf(" ");
? ? ? for(j=j1;j>0;j--)
? ? ? ?printf("*");
? ? ? j1-=2;//保持j能夠以每行少2個
? ? ? printf("\n"); ? ? ? ?
? ? ? }
}
? ? ?
? ? ??
2015-12-19
根據循環輸出空格 和*號啊
2015-12-19
嵌套循環呢,外面的循環控制行i=1,表示第一行,然后進行里面,內循環控制輸出空格和*,第一個內循環輸出一行的空格,第二個內循環控制輸出一行的*。里面的循環結束后就輸出好了一行,然后再到了外循環,i=2到第二行循環,以此類推。