for( j=i ; j<5 ; j++ ) 空格為什么小于5,根據(jù)什么來取值的?
#include <stdio.h>
int main()
{
? ? 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)換行
? ? }
? ? return 0;
}
2020-05-07
因?yàn)椤癴or(j=i;j<5'j++)”是子循環(huán),它循環(huán)一遍父循環(huán)才循環(huán)一次,每完成一次循環(huán)i都比上一次大。
因?yàn)閖=i,所以j隨著i的變化而變化,假設(shè)i=3,則在這循環(huán)里j的初始值為3,又因?yàn)閖<5,所以只能輸出兩次.
因?yàn)閕nt是整型不是浮點(diǎn)型,所以這里j<5也可以寫成j<=4,因?yàn)檩敵鏊男?。(我是新人,僅供參考)