資源描述:
《《c語言多重循環(huán)》PPT課件》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、多重循環(huán)文本作圖問題南通大學(xué)徐丹循環(huán)的嵌套一個(gè)循環(huán)體內(nèi)包含另一個(gè)完整的循環(huán)結(jié)構(gòu),稱為循環(huán)的嵌套。while語句、do-while語句和for語句都可以互相嵌套,甚至可以多層嵌套。例如:while(){for(){}}for(){for(){}}二重循環(huán)假設(shè)外循共循環(huán)m次,內(nèi)循環(huán)共循環(huán)n次,則:?內(nèi)外循環(huán)用到的循環(huán)變量名不能相同?外循環(huán)每循環(huán)1次,內(nèi)循環(huán)需要完成整個(gè)n次循環(huán)?內(nèi)循環(huán)的循環(huán)體共執(zhí)行m×n次*************************************************
2、************************************************122333……999999999122333……9999999991212321234321234……987654321234567891121123211234321……12345678987654321現(xiàn)場編程題目1輸出以下圖形**********分析1、該問題用二重循環(huán)實(shí)現(xiàn)2、外循環(huán)控制輸出行數(shù),for(i=1;i<=n;i++)內(nèi)循環(huán)實(shí)現(xiàn)輸出列數(shù),for(j=1;j<=m;j++)3、該題行數(shù)
3、i與列數(shù)j的關(guān)系是j<=i代碼#includemain(){inti,j;for(i=1;i<=4;i++){for(j=1;j<=i;j++)printf("*");printf("");}}現(xiàn)場編程題目2輸出以下圖形**********分析1、該問題用二重循環(huán)實(shí)現(xiàn)2、外循環(huán)控制輸出行數(shù)內(nèi)循環(huán)中第一部分用循環(huán)打印空格確定打印字符的初始位置,第二部分確定每行打印符號(hào)的個(gè)數(shù)3、該題行數(shù)i與列數(shù)j的關(guān)系是j<=i代碼#includemain(){inti,j;f
4、or(i=1;i<=4;i++){for(j=1;j<=4-i;j++)printf("");for(j=1;j<=i;j++)printf("*");printf("");}}現(xiàn)場編程題目3輸出以下圖形****************分析1、該問題用二重循環(huán)實(shí)現(xiàn)2、外循環(huán)控制輸出行數(shù)內(nèi)循環(huán)中第一部分用循環(huán)打印空格確定打印字符的初始位置,第二部分確定每行打印符號(hào)的個(gè)數(shù)3、本題圖形的規(guī)律:每行“*”的個(gè)數(shù)與行數(shù)i的關(guān)系是2*i-11234n=4時(shí):3210n-ii13572*i-1*******
5、*********分析:代碼#includemain(){inti,j,k;for(i=1;i<=4;i++){for(j=1;j<=4-i;j++)printf("");for(k=1;k<=2*i-1;k++)printf("*");printf("");}}拓展練習(xí)題目1輸出以下圖形112112321……12345678987654321123456789876543210空格數(shù)i123456789前半段數(shù)字012345678后半段數(shù)字9-iii-1*********1
6、********121*******12321………*12345678765432112345678987654321分析:代碼#includevoidmain(){inti,j;for(i=1;i<=9;i++){for(j=1;j<=9-i;j++)printf("");for(j=1;j<=i;j++)printf("%d",j);for(j=i-1;j>=1;j--)printf("%d",j);printf("");}}拓展練習(xí)題目2輸出以下圖形**********
7、**************-3-2-10123n=4時(shí):3210123abs(i)i13575312*(n-abs(i))-1*************************分析:代碼#include#includevoidmain(){inti,j;for(i=-3;i<=3;i++){for(j=1;j<=abs(i);j++)printf("");for(j=1;j<=2*(4-abs(i))-1;j++)printf("*");printf("")
8、;}}總結(jié)外循環(huán)控制圖形的行數(shù)內(nèi)循環(huán)的第一部分控制輸出字符的首位置,第二部分控制輸出字符的個(gè)數(shù)用printf("")語句換行如果關(guān)于x軸或y軸對(duì)稱,循環(huán)變量從-(n-1)/2到(n-1)/2,n為行數(shù)或列數(shù)。作業(yè)利用雙重循環(huán)結(jié)構(gòu)打印所示圖形**********9876543210