




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第4章C語(yǔ)言的3種基本結(jié)構(gòu)4.1C語(yǔ)句概述高級(jí)語(yǔ)言源程序的基本組成單位是語(yǔ)句。語(yǔ)句按功能可以分為兩類:描述計(jì)算機(jī)要執(zhí)行的操作運(yùn)算(如賦值語(yǔ)句)控制上述操作運(yùn)算的執(zhí)行順序(如選擇語(yǔ)句)C語(yǔ)言的語(yǔ)句可以分為如下五類:(1)表達(dá)式語(yǔ)句:表達(dá)式后面加一個(gè)分號(hào)就構(gòu)成了一個(gè)表達(dá)式語(yǔ)句。例如:
sum=a+b; /*賦值語(yǔ)句*/i++; /*自加運(yùn)算表達(dá)式語(yǔ)句*/x=1,y=2;/*逗號(hào)表達(dá)式語(yǔ)句*/(2)函數(shù)調(diào)用語(yǔ)句:函數(shù)調(diào)用語(yǔ)句由一個(gè)函數(shù)加一個(gè)分號(hào)構(gòu)成。例如:
printf(“ThisisaCstatement.”);(3)空語(yǔ)句:只有一個(gè)分號(hào)(;)的語(yǔ)句稱為空語(yǔ)句。在程序中空語(yǔ)句經(jīng)常被用作循環(huán)體,比如常見的用于延時(shí)的一種循環(huán)語(yǔ)句。
例如:for(i=0;i<=1000;i++);4.1C語(yǔ)句概述(4)復(fù)合語(yǔ)句:用花括號(hào){}將多個(gè)語(yǔ)句組合在一起稱為復(fù)合語(yǔ)句,又稱為語(yǔ)句塊(block)。例如:{intx,y;z=x+y;printf(“%d”,z);}(5)控制語(yǔ)句控制程序執(zhí)行順序,實(shí)現(xiàn)基本結(jié)構(gòu)的語(yǔ)句,有下面九種:①if-else語(yǔ)句
(條件語(yǔ)句)②switch語(yǔ)句
(多分支選擇語(yǔ)句)③for語(yǔ)句
(循環(huán)語(yǔ)句)④while語(yǔ)句
(循環(huán)語(yǔ)句)⑤do-while語(yǔ)句
(循環(huán)語(yǔ)句)⑥continue語(yǔ)句
(結(jié)束本次循環(huán)語(yǔ)句)⑦break語(yǔ)句
(終止執(zhí)行循環(huán)語(yǔ)句或switch語(yǔ)句)⑧goto語(yǔ)句
(轉(zhuǎn)向語(yǔ)句)⑨return語(yǔ)句
(函數(shù)返回值語(yǔ)句)4.2順序結(jié)構(gòu)程序設(shè)計(jì)C語(yǔ)言是結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言,結(jié)構(gòu)化程序設(shè)計(jì)的結(jié)構(gòu)主要有:順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)三種。
1.順序結(jié)構(gòu)順序結(jié)構(gòu)是最基本、最簡(jiǎn)單的程序結(jié)構(gòu),它由若干語(yǔ)句塊從上到下依次排列次序順序執(zhí)行。順序結(jié)構(gòu)如圖所示,先執(zhí)行A塊,再執(zhí)行B塊,兩者是從上到下的順序執(zhí)行關(guān)系。
AB程序中的語(yǔ)句,按照它們出現(xiàn)的先后順序逐條執(zhí)行,這樣的程序結(jié)構(gòu)就是順序結(jié)構(gòu)。順序結(jié)構(gòu)是程序設(shè)計(jì)的最基本結(jié)構(gòu)。#include<stdio.h>intmain(void){printf("1*\n");printf("2**\n");printf("3***\n");printf("4****\n");printf("5*****\n");printf("6******\n");return0;}語(yǔ)句從“printf("1*\n");”開始依次按照順序執(zhí)行,并最終輸出所要求的圖形格式。1*2**3***4****5*****6******4.3選擇結(jié)構(gòu)設(shè)計(jì)if語(yǔ)句(三種基本形式)1.if語(yǔ)句(1)if(表達(dá)式)語(yǔ)句;
(復(fù)合語(yǔ)句)例:
if(x>y)printf(“%d”,x);構(gòu)成方式、執(zhí)行方式、例子、注意事項(xiàng)。表達(dá)式語(yǔ)句真(非0)假(0)例:輸入兩個(gè)整數(shù),并以由小到大的順序輸出。
#include<stdio.h>
intmain(void)
{
inta,b,t;
scanf(″%d,%d″,&a,&b);
if(a>b)
{
t=a;
a=b;
b=t;
}
printf(″%d,%d\n″,a,b);
return0;
}yna>bT=aA=bB=t4.3if語(yǔ)句(2)if(表達(dá)式)語(yǔ)句1else語(yǔ)句2例:
if(x>y)printf(“%d”,x);elseprintf(“%d”,y);
條件
語(yǔ)句1
語(yǔ)句2YNP52-例4.3思考:僅用if語(yǔ)句實(shí)現(xiàn):輸入兩個(gè)數(shù),輸出最大數(shù)例:求一個(gè)數(shù)的絕對(duì)值方法一:用if…else…語(yǔ)句實(shí)現(xiàn)#include<stdio.h>intmain(void){
doublex;printf(″PleaseEnterarealnumber:″);scanf(″%lf″,&x);if(x<0.0)x=-x;elsex=x;printf(“theabsolutevalueis%lf\n”,x);return0;}方法二:用if語(yǔ)句實(shí)現(xiàn)#include<stdio.h>intmain(void){
doublex;printf(″PleaseEnterarealnumber:″);scanf(″%lf″,&x);if(x<0.0)x=-x;printf(“theabsolutevalueis%lf\n”,x);return0;}這種結(jié)構(gòu)稱為不平衡if結(jié)構(gòu)。它不如平衡的if結(jié)構(gòu)容易理解和清晰4.3if語(yǔ)句(3)if(表達(dá)式1)語(yǔ)句1elseif(表達(dá)式2)語(yǔ)句2elseif(表達(dá)式3)語(yǔ)句3
……elseif(表達(dá)式m)語(yǔ)句melse語(yǔ)句nelseif例子/*printoutthetypeofcharacter
*/#include<stdio.h>main(){charc;printf("Enteracharacter:");c=getchar();if(c<0x20)printf("Thecharacterisacontrolcharacter\n");elseif(c>='0'&&c<='9')printf("Thecharacterisadigit\n");elseif(c>='A'&&c<='Z')printf("Thecharacterisacapitalletter\n");elseif(c>='a'&&c<='z')printf("Thecharacterisalowerletter\n");elseprintf("Thecharacterisothercharacter\n");}運(yùn)行:Enteracharacter:
Thecharacterisacontrolcharacter運(yùn)行:Enteracharacter:8Thecharacterisadigit運(yùn)行:Enteracharacter:DThecharacterisacapitalletter運(yùn)行:Enteracharacter:hThecharacterisalowerletter運(yùn)行:Enteracharacter:FThecharacterisacapitalletter\n3.If語(yǔ)句的嵌套在if語(yǔ)句中又包含一個(gè)或多個(gè)if語(yǔ)句稱為if語(yǔ)句的嵌套。形式:if()
if()語(yǔ)句1 else語(yǔ)句2else
if()語(yǔ)句3 else語(yǔ)句4內(nèi)嵌if嵌套if語(yǔ)句匹配規(guī)則:else總是與它上面的、最近的、統(tǒng)一復(fù)合語(yǔ)句中的未配對(duì)的if語(yǔ)句配對(duì)。例:if()
if()語(yǔ)句1else if()語(yǔ)句2else語(yǔ)句3例:if() {if()語(yǔ)句1}else if()語(yǔ)句2else語(yǔ)句3當(dāng)if和else數(shù)目不同時(shí),可以加花括號(hào)來確定配對(duì)關(guān)系。if語(yǔ)句的嵌套例:if(a==b)if(b==c)printf(“a==b==c”);elseprintf(“a!=b”);修改:if(a==b){if(b==c)printf(“a==b==c”);}elseprintf(“a!=b”);實(shí)現(xiàn)if~else正確配對(duì)方法:加{}
例子:
-1(x<0)例5.3有一個(gè)函數(shù)y=0(x=0),編一程序,輸入一個(gè)x值,輸出y值。1(x>0)算法邏輯:算法邏輯:
輸入x輸入x
若x<0,則y=-1若x<0,則y=-1
若x=0,則y=0否則: 若x>0,則y=1若x=0,則y=0
輸出y若x>0,則y=1
輸出y
#include<stdio.h>voidmain(){intx,y;scanf(“%d”,&x);{
程序段}printf(“x=%d,y=%d\n”,x,y);}例:三數(shù)中取大數(shù)/*三數(shù)取大*/floatmax3(floatx,floaty,floatz){floatmax=x;if(z>y)if(z>x)max=z;elseif(y>x)max=y;return(max);}當(dāng)x,y,z分別為(2,3,1)和(1,3,2)時(shí),結(jié)果是?通過這個(gè)例子可以看到:(1)不平衡的if…else結(jié)構(gòu)會(huì)增加閱讀和理解程序的困難。(2)正確的縮進(jìn)格式(即鋸齒形書寫格式)可以幫助人們理解程序,但錯(cuò)誤的縮進(jìn)格式反而會(huì)使人迷惑。(3)不要太相信自己的判斷,要嚴(yán)格按語(yǔ)法關(guān)系檢查程序。在不易弄清的地方可以加花括號(hào)來保證自己構(gòu)思的邏輯關(guān)系的正確性。如上述程序可以改寫為:求三個(gè)數(shù)中的最大數(shù)的正確解法floatmax3(floatx,floaty,floatz){
floatmax=x;if(z>y){
if(z>x)max=z;
}
else{
if(y>x)max=y;
}
return(max);}一些細(xì)節(jié)問題if(3)printf(“OK”);if(‘a(chǎn)’)printf(“OK”);表達(dá)式的值的判斷依據(jù),非零即真else不能單獨(dú)使用,必須同if連用;但是if可以單獨(dú)使用{}可以將多條語(yǔ)句放在一起使用,}后面不需要加;號(hào)多分支ifelseif…else舉例根據(jù)輸入的考試成績(jī)等級(jí)打印出百分制分?jǐn)?shù)段。A:90~100B:80~89C:70~79D:60~69 E:<60P54-例4.4#include<stdio.h>intmain(){
intscore;printf(“\nPleaseinputthescoreofastudent:\n”);scanf(“%d”,&score);if(score>=90)printf(“A\n”);elseif(score>=80)printf(“B\n”);elseif(score>=70)printf(“C\n”);elseif(score>=60)printf(“D\n”);elseprintf(“E\n”);return0;}switch語(yǔ)句switch語(yǔ)句的格式:switch
(表達(dá)式){
case常量表達(dá)式1:
case常量表達(dá)式2:語(yǔ)句2;
…case常量表達(dá)式n:語(yǔ)句n;default:語(yǔ)句n+1;
}例題:P56-例4.6給出成績(jī)打印A,B,C…難點(diǎn):如何構(gòu)造“常量表達(dá)式”如何處理100分的問題#include<stdio.h>intmain(){
intscore;printf(“\nPleaseinputthescoreofastudent:\n”);scanf(“%d”,&score);switch(score/10){case10:case9:printf(“A\n”);break;case8:printf(“B\n”);break;case7:printf(“C\n”);break;case6:printf(“D\n”);break;default:printf(“E\n”);}}例題:運(yùn)輸公司對(duì)用戶計(jì)算運(yùn)費(fèi)。路程(s,正整數(shù))越遠(yuǎn),每公里運(yùn)費(fèi)越低。標(biāo)準(zhǔn)如下:s<250km沒有折扣250≤s<5002%折扣500≤s<10005%折扣1000≤s<20008%折扣2000≤s<300010%折扣3000≤s15%折扣設(shè)每公里每噸貨物的基本運(yùn)費(fèi)為p,貨物重為w,距離為s,折扣為d,則總運(yùn)費(fèi)f的計(jì)算公式為:f=p*w*s*(1-d)分析折扣變化的規(guī)律性:折扣的“變化點(diǎn)”都是250的倍數(shù)在橫軸上加一種坐標(biāo)c,c的值為s/250。c代表250的倍數(shù)。c<1,無折扣;1≤c<2,折扣d=2%;2≤c<4,d=5%;4≤c<8,d=8%;8≤c<12,d=10%;c≥12,d=15%。switch(s/250){
case0:d=0;break;
case1:d=2;break;
case2:
case3:d=5;break;
case4:
case5:
case6:
case7:d=8;break;
case8:
case9:
case10:
case11:d=10;break;
default:d=15;break;}練習(xí)(分別用if…else和switch語(yǔ)句實(shí)現(xiàn))將一個(gè)月份數(shù)字轉(zhuǎn)換成英文月份名稱并輸出。(假定月份變量為整型變量month)使用switch結(jié)構(gòu)需注意以下幾點(diǎn):switch結(jié)構(gòu)的執(zhí)行體是一個(gè)由多個(gè)case語(yǔ)句和一個(gè)可缺省的default語(yǔ)句組成的復(fù)合語(yǔ)句,由{}標(biāo)識(shí)switch后面括弧內(nèi)的表達(dá)式,可以為整數(shù)、字符或者枚舉類型的表達(dá)式。case表達(dá)式可以是整型常量或字符常量表達(dá)式,不能為含有變量的表達(dá)式。例如可以是:case3+4:但不允許寫成:intx=3,y=4;switch(z){…casex+y:…}3.當(dāng)表達(dá)式的值與某一個(gè)case后面的常量表達(dá)式的值相等時(shí),就執(zhí)行此case后面的語(yǔ)句,若所有case中的常量表達(dá)式的值都沒有與表達(dá)式的值匹配的,就執(zhí)行default后面的語(yǔ)句。4.
每個(gè)case的常量表達(dá)式的值必須互不相同,否則會(huì)出現(xiàn)互相矛盾的現(xiàn)象。例如:case3+2:…case8-3:5.
各個(gè)case和default的出現(xiàn)次序不影響執(zhí)行結(jié)果。例如,可以先出現(xiàn)“default:…”,再出現(xiàn)“case′D′:…”,然后是“case′A′:…”。6.
執(zhí)行完一個(gè)case后面的語(yǔ)句后,流程控制轉(zhuǎn)移到下一個(gè)case繼續(xù)執(zhí)行。case常量表達(dá)式只是起語(yǔ)句標(biāo)號(hào)作用,并不是在進(jìn)行條件判斷。在執(zhí)行switch語(yǔ)句時(shí),根據(jù)switch后面表達(dá)式的值找到匹配的入口標(biāo)號(hào),就從此標(biāo)號(hào)開始執(zhí)行下去,不再進(jìn)行判斷。應(yīng)該在執(zhí)行一個(gè)case分支后,用一個(gè)break語(yǔ)句來終止switch語(yǔ)句的執(zhí)行。
7.
多個(gè)case可以共用一組執(zhí)行語(yǔ)句。
8.
switch的匹配測(cè)試,只能測(cè)試是否相等,不能測(cè)試關(guān)系或邏輯。
9.
switch結(jié)構(gòu)允許嵌套。4.4循環(huán)結(jié)構(gòu)以往的程序,執(zhí)行一次就退出了,如何讓它不停地重復(fù)執(zhí)行?4.4循環(huán)結(jié)構(gòu)思考求1~100的累加和。分析換一種思路:sum=1+2+…+100;首先設(shè)置一個(gè)累計(jì)器sum,其初值為0,利用sum+=n來計(jì)算(n依次取1,2,…,100),只要解決以下3個(gè)問題即可:
(1)將n的初值置為1;
(2)每執(zhí)行1次“sum+=n;”后,n增1;
(3)當(dāng)n增到101時(shí),停止計(jì)算。此時(shí),
sum的值就是1~100的累加和。sum=sum+n;格式goto語(yǔ)句標(biāo)號(hào)說明(1)與if語(yǔ)句一起構(gòu)成循環(huán)結(jié)構(gòu)。(2)不符合結(jié)構(gòu)化程序設(shè)計(jì)原則,一般不用。#include<stdio.h>voidmain(){intn=1,sum=0;loop:sum+=n;n++;if(n<=100)gotoloop;printf(“sum=%d\n”,sum);}
舉例使用goto語(yǔ)句與if語(yǔ)句配合構(gòu)成循環(huán)結(jié)構(gòu),實(shí)現(xiàn)求1~100的累加和。作用:使系統(tǒng)轉(zhuǎn)向標(biāo)號(hào)所在的語(yǔ)句行執(zhí)行。標(biāo)號(hào)的定名規(guī)則與變量名相同。一、goto語(yǔ)句格式while(表達(dá)式)循環(huán)體語(yǔ)句說明1.循環(huán)體如果包含一個(gè)以上的語(yǔ)句,必須使用復(fù)合語(yǔ)句形式。2.在循環(huán)體中,必須有使循環(huán)條件趨向于不滿足(假)的語(yǔ)句。3.先判斷表達(dá)式,后執(zhí)行語(yǔ)句。?含義當(dāng)表達(dá)式為真(非0值)時(shí),執(zhí)行while語(yǔ)句中的內(nèi)嵌語(yǔ)句。執(zhí)行過程表達(dá)式循環(huán)體語(yǔ)句假
真循環(huán)體語(yǔ)句當(dāng)表達(dá)式值為真N-S圖表示二、while語(yǔ)句sum=55舉例求1~10的累加和。i=1sum=0當(dāng)i<=10sum=sum+ii++輸出sum#include<stdio.h>voidmain(){inti,sum;i=1;sum=0;while(i<=10)
{
sum=sum+i;i++;
}printf(“sum=%5d\n”,sum);}思考1、如果去掉循環(huán)體中的大括號(hào),執(zhí)行過程將會(huì)怎樣變化?2、在循環(huán)體中,使循環(huán)條件趨向于不滿足(假)的語(yǔ)句是哪條??1求1~5的累加和.2求1~10的奇數(shù)和.3求1~10的偶數(shù)和.二、while語(yǔ)句格式do
循環(huán)體語(yǔ)句while(表達(dá)式);說明1、循環(huán)體如果包含一個(gè)以上的語(yǔ)句,必須使用復(fù)合語(yǔ)句形式。2、在循環(huán)體中,必須有使循環(huán)條件趨向于不滿足(假)的語(yǔ)句。3、先執(zhí)行循環(huán)體語(yǔ)句,后判斷表達(dá)式的值。?含義執(zhí)行do-while語(yǔ)句中的內(nèi)嵌語(yǔ)句,直到表達(dá)式為假(0)才跳出循環(huán)。執(zhí)行過程表達(dá)式循環(huán)體語(yǔ)句假真循環(huán)體語(yǔ)句當(dāng)表達(dá)式值為真N-S圖表示至少執(zhí)行一次三、do-while語(yǔ)句sum=55舉例求1~10的累加和。#include<stdio.h>voidmain(){inti,sum;i=1;sum=0;do
{
sum=sum+i;i++;
}while(i<=10);printf(“sum=%5d\n”,sum);}i=1sum=0當(dāng)i<=10(直到i>10)輸出sumsum=sum+ii++思考1.如果去掉循環(huán)體中的大括號(hào),執(zhí)行過程將會(huì)怎樣變化?2.在循環(huán)體中,使循環(huán)條件趨向于不滿足(假)的語(yǔ)句是哪條?三、do-while語(yǔ)句舉例while和do-while循環(huán)的比較。#include<stdio.h>voidmain(){inti,sum=0;scanf(“%d”,&i);while(i<=10)
{
sum=sum+i;i++;
}printf(“sum=%d\n”,sum);}#include<stdio.h>voidmain(){inti,sum=0;scanf(“%d”,&i);do
{
sum=sum+i;i++;
}while(i<=10)printf(“sum=%d\n”,sum);}輸入:1
輸入:11sum=55輸出:sum=55sum=0輸出:sum=11此程序的功能?什么情況下兩者結(jié)果相同?三、do-while語(yǔ)句格式for(表達(dá)式1;表達(dá)式2;表達(dá)式3)語(yǔ)句for(循環(huán)變量賦初值;循環(huán)條件;循環(huán)變量增值)語(yǔ)句執(zhí)行過程(1)先求解表達(dá)式1;(2)求解表達(dá)式2,若其值為真,則執(zhí)行循環(huán)體語(yǔ)句,然后執(zhí)行第(3)步;若為假,則結(jié)束循環(huán),轉(zhuǎn)到第(5)步;(3)求解表達(dá)式3;(4)轉(zhuǎn)向步驟(2);(5)循環(huán)結(jié)束,執(zhí)行for語(yǔ)句下面的一個(gè)語(yǔ)句。表達(dá)式2循環(huán)體語(yǔ)句假
真求解表達(dá)式1求解表達(dá)式3四、for語(yǔ)句舉例求1~10的累加和。sum=0fori=1to10sum=sum+i輸出sum#include<stdio.h>voidmain(){inti,sum;sum=0;for(i=1;i<=10;i++)sum=sum+i;printf(“sum=%5d\n”,sum);}?1求1~5的累加和.2求1~10的奇數(shù)和.3求1~10的偶數(shù)和.四、for語(yǔ)句for(表達(dá)式1;表達(dá)式2;表達(dá)式3)語(yǔ)句說明三個(gè)表達(dá)式都可以省略。表達(dá)式2循環(huán)體語(yǔ)句假
真求解表達(dá)式3表達(dá)式1省略循環(huán)體語(yǔ)句求解表達(dá)式1求解表達(dá)式3表達(dá)式2省略表達(dá)式2循環(huán)體語(yǔ)句假
真求解表達(dá)式1表達(dá)式3省略四、for語(yǔ)句的靈活性說明1i=1;for(;i<=10;i++)sum=sum+i;2for(i=1;
;i++)sum=sum+i;?3for(i=1;i<=10;){sum=sum+i;i++;}for(i=1;i<=10;i++)sum=sum+i;表達(dá)式1可以省略,但其后的分號(hào)不可以省略。沒有循環(huán)結(jié)束條件,構(gòu)成了死循環(huán)for(i=1;i<=10;i++)sum=sum+i;四、for語(yǔ)句說明45for(;;)sum=sum+i;6表達(dá)式1和表達(dá)式3可以是與循環(huán)變量無關(guān)的表達(dá)式。for(;i<=10;){sum=sum+i;i++;}7表達(dá)式2一般是關(guān)系表達(dá)式while(i<=10){sum=sum+i;i++;}while(1)sum=sum+i;表達(dá)式1和表達(dá)式3可以同時(shí)省略,此時(shí)等同于while語(yǔ)句。for(sum=0,i=1;i<=100;i++)sum=sum+i;例建議:for語(yǔ)句中只放與循環(huán)控制有關(guān)的語(yǔ)句。四、for語(yǔ)句說明1、三種循環(huán)語(yǔ)句在處理循環(huán)問題時(shí),一般可以相互替代。2、對(duì)于循環(huán)次數(shù)固定的問題,用for語(yǔ)句實(shí)現(xiàn)比較簡(jiǎn)單。3、對(duì)于循環(huán)次數(shù)不確定的問題,可用while語(yǔ)句或do-while語(yǔ)句實(shí)現(xiàn)。4、while語(yǔ)句:先判斷,后執(zhí)行。
do-while語(yǔ)句:先執(zhí)行,后判斷。五、幾種循環(huán)語(yǔ)句的比較格式for/while(表達(dá)式1){…if(表達(dá)式2)break;
…}舉例…...sum=0;for(i=1;i<=10;i++){if(i>5)break;sum=sum+i;}printf(“sum=%5d\n”,sum);…...for/while(表達(dá)式1){…if(表達(dá)式2)conitue;
…}結(jié)束整個(gè)循環(huán)結(jié)束本次循環(huán)…...sum=0;for(i=1;i<=10;i++){if(i<=5)continue;sum=sum+i;}printf(“sum=%5d\n”,sum);…...六、break/continue語(yǔ)句概念一個(gè)循環(huán)體內(nèi)又包含另一個(gè)完整的循環(huán)結(jié)構(gòu),稱為循環(huán)嵌套。1234246836912481216舉例打印乘法口訣表。#include<stdio.h>voidmain(){inti,j;for(i=1;i<=4;i++)
{for(j=1;j<=4;j++)printf(“%4d”,i*j);printf(“\n”);
}}i=1,j=11*1j=21*2j=31*3j=41*4i=2,j=12*1j=2……i=3i=4fori=1to4輸出i*jforj=1to4換行七、循環(huán)嵌套124369481216#include<stdio.h>voidmain(){inti,j;for(i=1;i<=4;i++)
{for(j=1;j<=i;j++)printf(“%4d”,i*j);printf(“\n”);
}}(一)循環(huán)嵌套思考1#include<stdio.h>voidmain(){inti,j;for(i=1;i<=4;i++)
{for(j=1;j<=5-i;j++)printf(“%4d”,i*j);printf(“\n”);
}}(一)循環(huán)嵌套思考21234246364#include<stdio.h>voidmain(){inti,j;for(i=1;i<=4;i++)
{for(j=1;j<=4-i;j++)printf(“”);for(j=5-i;j<=4;j++)printf(“%4d”,i*j);printf(“\n”);
}}(一)循環(huán)嵌套思考34686912481216#include<stdio.h>voidmain(){inti,j;for(i=1;i<=4;i++)
{for(j=1;j<=i-1;j++)printf(“”);for(j=i;j<=4;j++)printf(“%4d”,i*j);printf(“\n”);
}}(一)循環(huán)嵌套思考4123446891216例1利用公式:/4=1-1/3+1/5-1/7+…求
的近似值,直到某一項(xiàng)的絕對(duì)值小于10-6為止。#include<stdio.h>#include<math.h>voidmain(){
ints;floatn,t,pi;t=1;pi=0;n=1.0;s=1;while((fabs(t))>=1e-6)
{
pi=pi+t;n=n+2;s=-s;t=s/n;}pi=pi*4;printf("pi=%10.6f\n",pi);}(二)程序舉例pi=1-1/3+…輸出4*pis=1(-1)n=1,3,5,7…t=s/n例2求Fibo
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO/TR 41019:2024 EN Facility managements role in sustainability,resilience and adaptability
- 2025年度校園基礎(chǔ)設(shè)施裝修改造工程合同
- 2025年度房產(chǎn)居間合同:旅游地產(chǎn)項(xiàng)目開發(fā)合作協(xié)議
- 2025年度標(biāo)前協(xié)議模板:XX基礎(chǔ)設(shè)施建設(shè)合作前期協(xié)議
- 2025年度酒店客房預(yù)訂客戶投訴處理合同
- 2025年度博物館安防監(jiān)控設(shè)備采購(gòu)與安裝合同
- 學(xué)期班級(jí)教學(xué)活動(dòng)工作任務(wù)計(jì)劃
- 學(xué)期閱讀推廣活動(dòng)計(jì)劃
- 社區(qū)文藝活動(dòng)計(jì)劃
- 生物教育在新時(shí)代的挑戰(zhàn)與機(jī)遇計(jì)劃
- 2024全國(guó)各省高考詩(shī)歌鑒賞真題及解析
- 高考日語(yǔ)閱讀理解練習(xí)2篇-高考日語(yǔ)復(fù)習(xí)
- 印刷基礎(chǔ)知識(shí)培訓(xùn)資料
- NB/T 11536-2024煤礦帶壓開采底板井下注漿加固改造技術(shù)規(guī)范
- 2024-2025學(xué)年人教版五年級(jí)(上)英語(yǔ)寒假作業(yè)(一)
- 【課件】九年級(jí)化學(xué)下冊(cè)(人教版2024)-【新教材解讀】義務(wù)教育教材內(nèi)容解讀課件
- 醫(yī)院臨床科研大數(shù)據(jù)平臺(tái)方案
- 2024年北京市中考生物真題卷及答案解析
- GA/T 761-2024停車庫(kù)(場(chǎng))安全管理系統(tǒng)技術(shù)要求
- (2024)湖南省公務(wù)員考試《行測(cè)》真題卷及答案解析
- 2025年部編教材的網(wǎng)絡(luò)培訓(xùn)心得體會(huì)
評(píng)論
0/150
提交評(píng)論