課程
/后端開發(fā)
/C
/C語言入門
?for(k=0;k<2*i-1;k++) 是什么意思啊
2016-07-22
源自:C語言入門 4-12
正在回答
我來嘗試解釋你的這個問題吧,首先我們先觀察一下代碼
#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;
}
我們發(fā)現(xiàn) i 是控制輸出換行的,k是控制輸出*號的
然后我們看一下要求我們的代碼實現(xiàn)的效果如下:
? ?* ? *** ?***** *******
這時候我們觀察一下“行數(shù)i”與“*號k”之間是不是存在函數(shù)關(guān)系
第一行,即i=1 時?
*號為一個 即k=1
。。。i=2時
。。。k=3
。。。i=3時
。。。k=5
。。。i=4時
。。。k=7
這時候我們發(fā)現(xiàn)k總是比i的2倍少1,于是我們換成表達式即為;
k=2i-1
這時候當(dāng)子循環(huán)的起始數(shù)值k定義為0,當(dāng)父循環(huán)i的值為1時我們的子循環(huán)也能執(zhí)行一次。這就是為什么子循環(huán)是
for(k=0;k<2*i-1;k++);
純手打,望采納?。?!
qq_不離_03379095 提問者
舉報
C語言入門視頻教程,帶你進入編程世界的必修課-C語言
3 回答for( k=0 ; k<2*i-1 ; k++ )中為什么不可以k=1;k<=2*i-1;
5 回答for( k=0 ; k<2*i-1 ; k++ )
4 回答for( k=0 ; k<i*2-1; k++ ) 什么意思啊
2 回答k=0 ; k<2*i-1 ; k++ 為什么會有這個
1 回答for( k=0; k< 2*i-1 ; k++ ) ?? 為啥這個就好使了呢
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2016-07-22
我來嘗試解釋你的這個問題吧,首先我們先觀察一下代碼
#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;
}
我們發(fā)現(xiàn) i 是控制輸出換行的,k是控制輸出*號的
然后我們看一下要求我們的代碼實現(xiàn)的效果如下:
? ?*
? ***
?*****
*******
這時候我們觀察一下“行數(shù)i”與“*號k”之間是不是存在函數(shù)關(guān)系
第一行,即i=1 時?
*號為一個 即k=1
。。。i=2時
。。。k=3
。。。i=3時
。。。k=5
。。。i=4時
。。。k=7
這時候我們發(fā)現(xiàn)k總是比i的2倍少1,于是我們換成表達式即為;
k=2i-1
這時候當(dāng)子循環(huán)的起始數(shù)值k定義為0,當(dāng)父循環(huán)i的值為1時我們的子循環(huán)也能執(zhí)行一次。這就是為什么子循環(huán)是
for(k=0;k<2*i-1;k++);
純手打,望采納?。?!