第三章程序的流程控制_第1頁
第三章程序的流程控制_第2頁
第三章程序的流程控制_第3頁
第三章程序的流程控制_第4頁
第三章程序的流程控制_第5頁
已閱讀5頁,還剩173頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

第三章程序的流程控制第1頁,課件共190頁,創(chuàng)作于2023年2月3.1程序的概念程序是可以被計算機處理的指令序列。通常,程序是為完成一項任務(wù)、由匯編語言或高級語言編寫的代碼的集合。程序設(shè)計是根據(jù)所提出的任務(wù),用某種程序設(shè)計語言編制一個能正確完成該任務(wù)的計算機程序。第2頁,課件共190頁,創(chuàng)作于2023年2月3.1.1程序的特性著名的計算機科學(xué)家沃思(NikiklausWirth)提出一個公式:程序=數(shù)據(jù)結(jié)構(gòu)+算法?,F(xiàn)在又有很多專家對這個公式加以擴充:程序=算法+數(shù)據(jù)結(jié)構(gòu)+程序設(shè)計方法+語言工具和環(huán)境。第3頁,課件共190頁,創(chuàng)作于2023年2月所有程序(包括計算機程序)都有一些共同的性質(zhì),這些性質(zhì)主要包括:(1)指令是順序執(zhí)行的。(2)程序的執(zhí)行都有一個結(jié)果。(3)程序總是要對某些對象進行操作。(4)有的程序要加入對操作對象的說明。(5)有時指令要求執(zhí)行者做出判斷。(6)一條或一組指令可能需要執(zhí)行多次。第4頁,課件共190頁,創(chuàng)作于2023年2月程序設(shè)計離不開算法,算法指導(dǎo)程序設(shè)計,算法是程序的靈魂。因此程序設(shè)計的大致步驟如下。(1)問題定義(2)算法設(shè)計(3)算法表示(4)程序編制(5)程序調(diào)試、測試及資料編制3.2算法第5頁,課件共190頁,創(chuàng)作于2023年2月精確地講,算法是被精確定義的一系列規(guī)則,這些規(guī)則規(guī)定了解決特定問題的一系列操作順序,以便在有限步驟內(nèi)產(chǎn)生出所求問題的解答。3.2.1算法的特點第6頁,課件共190頁,創(chuàng)作于2023年2月

算法特性:(1)有效性。(2)確定性。(3)有窮性。(4)有零個或多個輸入。(5)有一個或多個輸出。有效性指算法所規(guī)定的操作都應(yīng)當(dāng)是能夠有效執(zhí)行的。確定性一是:所描述的操作應(yīng)當(dāng)具有明確的意義,不應(yīng)當(dāng)有歧義性。二是:操作作序列只有一個初始動作,序列中每一動作僅有一個后繼動作;有窮性指算法所規(guī)定的操作序列必須在允許的時間內(nèi)結(jié)束。第7頁,課件共190頁,創(chuàng)作于2023年2月【例3-1】從鍵盤輸入三個數(shù),找出其中最大的那個數(shù)。分析:從鍵盤輸入的三個數(shù)值必須用三個變量來保存,假定這三個變量分別為a、b、c,另外,還需要一個變量max來裝最大的那個數(shù)。先比較a和b的值,把數(shù)值大的放入max中,再將max與c比較,又把數(shù)值大的放入max中。經(jīng)過兩次比較,max中已存放的是a,b,c三個數(shù)中最大的數(shù),把max的值輸出就是所需結(jié)果。第8頁,課件共190頁,創(chuàng)作于2023年2月算法步驟:1.輸入三個數(shù),其值分別賦給三個變量a,b,c。2.把a與b中較大的那個數(shù)放入變量max中。3.把c與max中較大的那個數(shù)放入變量max中。4.輸出最后結(jié)果max的值。第9頁,課件共190頁,創(chuàng)作于2023年2月三個數(shù)比較大小#include<stdio.h>voidmain(){ inta,b,c,max; printf("請輸入三個數(shù)的值:"); scanf("%d%d%d",&a,&b,&c); if(a>b) max=a; else max=b; if(c>max) max=c; printf("最大的值是:%d\n",max);}第10頁,課件共190頁,創(chuàng)作于2023年2月1.流程圖表示法流程圖表示法常用圖例

3.2.2算法的表示第11頁,課件共190頁,創(chuàng)作于2023年2月求三個數(shù)最大值問題的流程圖表示第12頁,課件共190頁,創(chuàng)作于2023年2月2.N-S圖描述靈活的流線是程序中隱藏錯誤的禍根。針對這一弊病,1973年美國學(xué)者I.Nassi和B.Shneiderman提出了一種無流線的流程圖,稱為N-S圖。第13頁,課件共190頁,創(chuàng)作于2023年2月N-S圖表示法求三個數(shù)中最大值問題的N-S圖表示

第14頁,課件共190頁,創(chuàng)作于2023年2月常用的流程圖符號一.順序結(jié)構(gòu)順序結(jié)構(gòu)是一種簡單的線性結(jié)構(gòu),根據(jù)流程線所示的方向,各矩形框按順序執(zhí)行。如:右圖語句的執(zhí)行順序為:A→B→CN-S圖表示的順序結(jié)構(gòu)順序結(jié)構(gòu)流程圖第15頁,課件共190頁,創(chuàng)作于2023年2月二.選擇結(jié)構(gòu)選擇結(jié)構(gòu)是對給定的條件進行判斷,根據(jù)判斷結(jié)果的真假而分別執(zhí)行不同的框的內(nèi)容。有兩種選擇(分支)結(jié)構(gòu)的流程圖:第16頁,課件共190頁,創(chuàng)作于2023年2月(a)的執(zhí)行順序為:先判斷條件,當(dāng)條件為真時,執(zhí)行A,否則執(zhí)行B。(b)的執(zhí)行順序為:先判斷條件,當(dāng)條件為真時,執(zhí)行A,否則什么也不執(zhí)行。第17頁,課件共190頁,創(chuàng)作于2023年2月三.循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)是在某個條件為真的情況下,重復(fù)執(zhí)行某個框中的內(nèi)容。循環(huán)結(jié)構(gòu)有兩種基本形態(tài):while型循環(huán)和do_while型循環(huán)。①while型(當(dāng)型)循環(huán)的流程圖while型循環(huán)的執(zhí)行順序為:重復(fù)判斷條件、如果條件為真則執(zhí)行A,一但條件為假,則跳出循環(huán)。②do-while(直到型)型循環(huán)的流程圖do_while型循環(huán)的執(zhí)行順序為:先執(zhí)行A,再判斷條件,若條件為真則重復(fù)執(zhí)行A,一但條件為假,則跳出循環(huán)。A被稱為循環(huán)體,條件被稱為循環(huán)控制條件。①while型循環(huán)的N-S圖A被稱為循環(huán)體,條件被稱為循環(huán)控制條件。②do-while型循環(huán)的N-S圖第18頁,課件共190頁,創(chuàng)作于2023年2月循環(huán)結(jié)構(gòu)注意:1、在循環(huán)體中,必須對條件要煩判斷的值進行修改,使得經(jīng)過有限次循環(huán)后,循環(huán)一定能結(jié)束。2、while型循環(huán)中循環(huán)體可能一次都不執(zhí)行,而do_while型循環(huán)則至少執(zhí)行一次循體。3、do_while型循環(huán)可以很方便地轉(zhuǎn)化為while型循環(huán),而while型循環(huán)不一定能轉(zhuǎn)化為do_while型循環(huán)。第19頁,課件共190頁,創(chuàng)作于2023年2月

偽碼是用介于自然語言和計算機語言之間的文字和符號來描述算法,類似一篇短文,它把算法的思想表達(dá)清楚。3偽碼表示法第20頁,課件共190頁,創(chuàng)作于2023年2月

關(guān)系運算關(guān)系運算是指對兩個運算量之間的大小比較。C語言中提供的關(guān)系運算符有:>(大于)>=(大于或等于)<(小于)<=(小于或等于)==(等于)

!=(不等于)說明:(1)關(guān)系運算符的優(yōu)先級低于純算術(shù)類,

高于賦值類。(2)關(guān)系運算符的結(jié)合方式為自左至右。每個關(guān)系運算的操作數(shù)可以是任一表達(dá)式。例如:a+b<c+d應(yīng)理解為(a+b)<(c+d)第21頁,課件共190頁,創(chuàng)作于2023年2月

關(guān)系運算(3)關(guān)系表達(dá)式的值只有兩個:關(guān)系表達(dá)式成立,即為“真”,C語言中以“1”表示;關(guān)系表達(dá)式不成立,即為“假”,C語言中以“0”表示。例如:對于聲明語句:intx=2,y=3;表達(dá)式x==y的值為0;表達(dá)式x<y的值為1。第22頁,課件共190頁,創(chuàng)作于2023年2月

關(guān)系運算表達(dá)式z=3-1>=x+1<=y+2中z的值為1。z=2>=3<=5“算術(shù)”優(yōu)先z=0<=5“關(guān)系”優(yōu)先z=1z的值為1“賦值”第23頁,課件共190頁,創(chuàng)作于2023年2月

關(guān)系運算注意:1.要說明x在區(qū)間[a,b]中,數(shù)學(xué)中使用表達(dá)式a≤x≤b。但C語言中的表達(dá)式“a<=x<=b”的含義與之不同。假設(shè)a=0;b=0.5。若x=0.3,則執(zhí)行a<=x<=b時先求出“a<=x”的值得1,再進行“1<=b”得0(假)。因此,為了判斷x是否在[a,b]范圍內(nèi),應(yīng)寫成:

a<=x&&x<=b那么a<=x的值為1(真)且x<=b的值也為1(真),則整個表達(dá)式的值為1(真)。第24頁,課件共190頁,創(chuàng)作于2023年2月

關(guān)系運算2.表達(dá)式5>2>7>8在數(shù)學(xué)上是不允許的,而在C中是允許的。3.由于關(guān)系表達(dá)式的值是整型數(shù)0或1,故也可以將其看成是一種整型表達(dá)式。第25頁,課件共190頁,創(chuàng)作于2023年2月

關(guān)系運算例如:對于聲明語句:intx=2,y=3;表達(dá)式x==y的值為0;表達(dá)式x<y的值為1。表達(dá)式z=3-1>=x+1<=y+2中z的值為1。z=2>=3<=5“算術(shù)”優(yōu)先z=0<=5“關(guān)系”優(yōu)先z=1z的值為1“賦值”第26頁,課件共190頁,創(chuàng)作于2023年2月

關(guān)系運算4.字符數(shù)據(jù)的比較按其ASCII碼值進行。例如:’a’>0的值為1(真);’A’>100的值為0(假)。5.在判定兩個浮點數(shù)是否相等時,由于存儲上的誤差,會得出錯誤的結(jié)果。例如:1.0/3.0*3.0==1.0的值為0(假)注:應(yīng)避免對兩個實數(shù)表達(dá)式作“相等”或“不相等”的判別。因此上式可改寫為:fabs(1.0/3.0*3.0-1.0)<1e-5第27頁,課件共190頁,創(chuàng)作于2023年2月

邏輯運算C語言有三個邏輯運算符,它們是:&&(邏輯與)||(邏輯或)!(邏輯非)注:在進行判別時則把“非零”作為“真”,把0作為“假”。例如:if(8)printf(“true\n”);第28頁,課件共190頁,創(chuàng)作于2023年2月

邏輯運算&&和||是二元運算符,結(jié)合方向為自左至右;!為一元運算符,結(jié)合方向為自右至左。&&和||的優(yōu)先級低于關(guān)系運算符,而!的優(yōu)先級高于關(guān)系運算符。&&的優(yōu)先級高于||。例如:!3>14>=3&&6<=33+9&&00||!53||4&&0第29頁,課件共190頁,創(chuàng)作于2023年2月

邏輯運算真值表數(shù)據(jù)a數(shù)據(jù)b!a!ba&&ba||b!(a&&b)TTFFTTFTFFTFTTFTTFFTTFFTTFFT0||a==aa||!a==1a||a==a!(a||b)==!a&&!b1&&a==a0&&!a==0a&&a==a!(a&&b)==!a||!b!(!a)==a第30頁,課件共190頁,創(chuàng)作于2023年2月選擇型程序設(shè)計if語句(條件選擇語句)if語句的三種形式形式一:格式:if(expression)statement執(zhí)行過程:exprstatement非0=0例:if(x>y) printf(“%d”,x);第31頁,課件共190頁,創(chuàng)作于2023年2月#include<stdio.h>intmain(){intx,y;printf("Enteraninteger:");scanf("%d",&x);y=x;

if(y<0)y=-y;printf("\ninteger:%d--->absolutevalue:%d\n",x,y);return0;}例求一個數(shù)的絕對值數(shù)的絕對值第32頁,課件共190頁,創(chuàng)作于2023年2月【例】從鍵盤任意輸入兩個實數(shù),然后按其代數(shù)值從小到大輸出這兩個數(shù)。先制定算法的流程圖,如圖所示,虛線框為if結(jié)構(gòu)。根據(jù)流程圖寫出解決這個問題的程序。第33頁,課件共190頁,創(chuàng)作于2023年2月/*按升序輸出兩個數(shù)*/#include<stdio.h>main(){ floata,b,t; scanf("%f%f",&a,&b); if(a>b) { t=a; a=b; b=t; } printf("%5.2f,%5.2f\n",a,b);}升序輸出兩個數(shù)第34頁,課件共190頁,創(chuàng)作于2023年2月選擇型程序設(shè)計if語句(條件選擇語句)exprstatement1statement2非0=0形式二:格式:if(expression)statement1elsestatement2執(zhí)行過程:例:if(x>y)max=x;elsemax=y;第35頁,課件共190頁,創(chuàng)作于2023年2月#include<stdio.h>intmain(){inta,b;printf("Enterintegera:");scanf("%d",&a);printf("Enterintegerb:");scanf("%d",&b);

if(a==b)printf("a==b\n");

elseprintf("a!=b\n");return0;}例輸入兩個數(shù)并判斷兩數(shù)是否相等判斷相等第36頁,課件共190頁,創(chuàng)作于2023年2月形式三:格式:if(expr1)statement1elseif(expr2)statement2elseif(expr3)statement3…...[elsestatementn]第37頁,課件共190頁,創(chuàng)作于2023年2月expr1statemnt1非0=0expr2expr3statemntnstatemnt3statemnt2非0非0=0=0執(zhí)行過程:

例:if(salary>1000)index=0.4;elseif(salary>800)index=0.3;elseif(salary>600)index=0.2;elseif(salary>400)index=0.1;elseindex=0;第38頁,課件共190頁,創(chuàng)作于2023年2月#include<stdio.h>intmain(){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");}例判斷輸入字符種類判斷輸入字符種類第39頁,課件共190頁,創(chuàng)作于2023年2月【例】從鍵盤輸入+、-、*、/中的任一個,輸出對應(yīng)的英文單詞:plus、minus、mutiply、divide,若輸入的不是這四個字符中的任一個,則輸出“error”。算法的流程圖如圖所示,虛線框所示為if_else的規(guī)則嵌套:第40頁,課件共190頁,創(chuàng)作于2023年2月#include<stdio.h>intmain(){charch;ch=getchar();if(ch=='+')printf("plus\n");elseif(ch=='-')printf("minus\n");elseif(ch=='*') printf("multiply\n"); elseif(ch=='/') printf("divide\n"); else printf("error\n");return0;}

運算符號判斷第41頁,課件共190頁,創(chuàng)作于2023年2月例根據(jù)百分制分?jǐn)?shù)決定成績的等級:·80分以上為A級;·70分及以上,80分以下,B級;·60分及以上,70分以下,C級;·60分以下,D級。第42頁,課件共190頁,創(chuàng)作于2023年2月真假score>=80score>=70等級A真假輸入scorescore>=60等級B等級D等級C下次實驗第43頁,課件共190頁,創(chuàng)作于2023年2月if語句嵌套:一般形式:if(expr1)if(expr2)statement1elsestatement2內(nèi)嵌ifif(expr1)if(expr2)statement1elsestatement3

內(nèi)嵌if/*輸入兩數(shù)并判斷其大小關(guān)系*/#include<stdio.h>main(){intx,y;printf("Enterintegerx,y:");scanf("%d,%d",&x,&y);if(x!=y)

if(x>y)printf("X>Y\n");

elseprintf("X<Y\n");elseprintf("X==Y\n");}第44頁,課件共190頁,創(chuàng)作于2023年2月if(expr1)if(expr2)statement1elsestatement2elseif(expr3)statement3elsestatement4內(nèi)嵌if內(nèi)嵌ifif(expr1)statement1elseif(expr3)statement3elsestatement4內(nèi)嵌if第45頁,課件共190頁,創(chuàng)作于2023年2月【例】計算階躍函數(shù)y的值:第46頁,課件共190頁,創(chuàng)作于2023年2月/*

計算階躍函數(shù)y的值*/#include<stdio.h>main(){ floatx,y; printf("inputx:\n"); scanf("%f",&x); if(x>=0) if(x>0) y=1;

else y=0; else y=-1; printf("y=%-4.0f\n",y);}對多重if,最容易犯的錯誤是if與else配對錯誤,else總是與離它最近的上一個if配對。

階躍函數(shù)第47頁,課件共190頁,創(chuàng)作于2023年2月if~else配對原則:缺省{}時,else總是和它上面離它最近的未配對的if配對if(……)if(……)if(……)else…...else…...else…...第48頁,課件共190頁,創(chuàng)作于2023年2月例: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”);實現(xiàn)if~else正確配對方法:加{}第49頁,課件共190頁,創(chuàng)作于2023年2月例考慮下面程序輸出結(jié)果:intmain(){intx=100,a=10,b=20;intv1=5,v2=0;if(a<b)if(b!=15)if(!v1)x=1;elseif(v2)x=10;x=-1;printf("%d\n",x);return0;}結(jié)果:-1If_else配對第50頁,課件共190頁,創(chuàng)作于2023年2月

if語句適合兩種分支情況進行選擇。

如果多種分支的情況,可采用嵌套的if語句結(jié)構(gòu)。

存在的問題:

當(dāng)嵌套的分支較多時,程序的效率和可讀性降低。

解決方案:用switch結(jié)構(gòu)處理多路分支的情形。第51頁,課件共190頁,創(chuàng)作于2023年2月Switch結(jié)構(gòu)

當(dāng)嵌套if分支較多時,程序變得復(fù)雜冗長,可讀性降低。C語言提供了switch開關(guān)語句專門處理多路分支的情形,使程序變得簡潔。switch語句的一般形式為:

switch(<表達(dá)式>){case<常量表達(dá)式1>:語句序列1;case<常量表達(dá)式2>:語句序列2;case<常量表達(dá)式n>:語句序列n;default:語句序列(n+1);}第52頁,課件共190頁,創(chuàng)作于2023年2月switch語句一般形式的流程圖:先計算<表達(dá)式>的值,再從上到下地判斷與哪一個<常量表達(dá)式>的值相等,如果<表達(dá)式>的值等于<常量表達(dá)式i>的值,則從語句序列i開始執(zhí)行,直到語句序列(n+1)為止;若<表達(dá)式>的值不等于任何一個<常量表達(dá)式>的值,是執(zhí)行default后面的語句序列(n+1)。

第53頁,課件共190頁,創(chuàng)作于2023年2月常量表達(dá)式:值必須是整型、字符型或者枚舉類型語句序列:

允許有多條語句<表達(dá)式>:case表達(dá)式應(yīng)當(dāng)是整型常數(shù)表達(dá)式,不能含有變量與函數(shù)的常數(shù)表達(dá)式。第54頁,課件共190頁,創(chuàng)作于2023年2月例:某班級準(zhǔn)備周末舉行一個班級活動,但活動內(nèi)容要根據(jù)表中所示的天氣情況來決定:天氣活動內(nèi)容晴天登山有風(fēng)無雨郊游下雪堆雪人下雨不舉行班級活動其他天氣參觀博物館分析:①分別用整數(shù)1、2、3、4代表晴天、有風(fēng)無雨、下雪和下雨這4種天氣情況。②通過輸入天氣情況weather的值,來確定活動場所。第55頁,課件共190頁,創(chuàng)作于2023年2月/*

根據(jù)天氣情況決定活動場所*/#include<stdio.h>main(){intweather;scanf("%d",&weather);switch(weather){ case1:printf("rain----atpalaestra\n");case2:printf("snow----atplayground\n");case3:printf("fine----athill\n");case4:printf("wind----tooutskirt\n");default:printf("other----athome\n");}}活動確定第56頁,課件共190頁,創(chuàng)作于2023年2月使用switch結(jié)構(gòu)須注意以下幾點:(1)一個switch結(jié)構(gòu)的執(zhí)行部分是一個由一些case子結(jié)構(gòu)與一個可缺省的default子結(jié)構(gòu)組成的復(fù)合語句,它們位于一對花括號之中。(2)switch的判斷表達(dá)式只能對整數(shù)求值,可以使用字符或整數(shù),但不能使用浮點表達(dá)式。case表達(dá)式應(yīng)當(dāng)是整型常數(shù)表達(dá)式,不能含有變量與函數(shù)的常數(shù)表達(dá)式。例如可以是:case3+4:但不允許寫為:intx=3,y=4;switch(z){ … casex+y: …}第57頁,課件共190頁,創(chuàng)作于2023年2月(3)一個switch結(jié)構(gòu)中不可以出現(xiàn)兩個具有相同值的常量表達(dá)式。case3+2:…case8-3:(4)switch的匹配測試,只能測試是否相等,不能測試關(guān)系或邏輯。(5)C89要求C編譯系統(tǒng)應(yīng)當(dāng)實現(xiàn)∶一個switch最少可以包含257個case子結(jié)構(gòu),而C99要求最少支持1023個case子結(jié)構(gòu)。第58頁,課件共190頁,創(chuàng)作于2023年2月

結(jié)論:①程序不完全正確;②不能正確表達(dá)每一種情況。存在的問題:程序不能正確分支;解決方案:

使用分支語句break。第59頁,課件共190頁,創(chuàng)作于2023年2月break語句在switch語句中的作用

break語句起中斷和跳出的作用??梢杂迷趕witch分支語句和循環(huán)語句中。使用方法:

在switch語句中,在需要獨立執(zhí)行的<語句序列i>后面加上一條分支語句:break;第60頁,課件共190頁,創(chuàng)作于2023年2月switch(表達(dá)式){case常量表達(dá)式1:語句序列1break;case常量表達(dá)式2:語句序列2break;┇case常量表達(dá)式n:語句序列nbreak;default:語句序列n+1break;}第61頁,課件共190頁,創(chuàng)作于2023年2月【例】改寫成具有獨立分支的switch結(jié)構(gòu)。#include<stdio.h>main(){intweather;scanf("%d",&weather);switch(weather) { case1:printf("rain----atpalaestra\n");

break; case2:printf("snow----atplayground\n");

break; case3:printf("fine----athill\n");

break; case4:printf("wind----tooutskirt\n");

break; default:printf("other----athome\n"); }

}

程序運行時,任何一種天氣情況都只會對應(yīng)出現(xiàn)一種運動場所.第62頁,課件共190頁,創(chuàng)作于2023年2月例下程序的輸出結(jié)果:voidmain(){intx=1,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;case1:b++;break;}case2:a++;b++;break;case3:a++;b++;}printf(“\na=%d,b=%d”,a,b);}運行結(jié)果:a=2,b=1第63頁,課件共190頁,創(chuàng)作于2023年2月【例】運輸費用的計算問題。距離S越遠(yuǎn),每公里的運費越低。設(shè)每公里每噸貨物的基本運費為P,貨物重量為W(噸),距離為S,折扣為d,則總運輸費用f的計算公式為:f=P*W*S*(1-d)。其中折扣數(shù)d與距離有關(guān),具體標(biāo)準(zhǔn)如下:0<S<250km沒有折扣250

S<500折扣2%500

S<1000折扣5%1000

S<2000折扣8%2000

S<3000折扣10%3000

S折扣15%分析:折扣點的變化處都發(fā)生在距離為250的倍數(shù)上,如表所示。第64頁,課件共190頁,創(chuàng)作于2023年2月流程圖簡圖如左圖第65頁,課件共190頁,創(chuàng)作于2023年2月#include<stdio.h>main(){ intc,s; floatp,w,d,f; printf("pleaseinputp,w,s:\n"); scanf("%f,%f,%d",&p,&w,&s); if(s>=3000) c=12; else c=s/250; switch(c) {

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; case12:d=15;break; } f=p*w*s*(1-d/100); printf("Totalfreightis:%10.2f\n",f);}第66頁,課件共190頁,創(chuàng)作于2023年2月

程序范例求解一元二次方程ax2+bx+c=0的根(a≠0),a、b、c均為實數(shù),其值由鍵盤輸入。分析:一元二次方程的一般解為:

方程的求解需要考慮以下3種情況:①b2?4ac>0,方程有兩個不等的實根:其中a的值不能等于0,否則方程無解。第67頁,課件共190頁,創(chuàng)作于2023年2月

程序范例②b2?4ac=0方程有兩個相等的實根:③b2?4ac<0方程有兩個共軛復(fù)根:第68頁,課件共190頁,創(chuàng)作于2023年2月

程序范例第69頁,課件共190頁,創(chuàng)作于2023年2月

條件運算條件運算是一種在兩個表達(dá)式的值中選擇一個的操作。它的一般形式為:e1?e2:e3被稱為“條件表達(dá)式”它的操作過程為:若e1為真(非0),則此條件表達(dá)式的值為e2;若e1為假(0),則表達(dá)式取e3的值。注:條件運算符“?:”共要求三個運算量,是C語言中唯一的三元運算符。第70頁,課件共190頁,創(chuàng)作于2023年2月

條件運算例1:計算a+|b|的值。main(){floata,b;printf(“input2realsplease:”);scanf(“%f%f”,&a,&b);printf(“\n%f+|%f|=%f”,a,b,b>=0?a+b:a-b);}第71頁,課件共190頁,創(chuàng)作于2023年2月

條件運算例2輸入兩數(shù),輸出大者。main(){floata,b,max;printf(“input2realsplease:”);scanf(“%f%f”,&a,&b);max=a>b?a:b;printf(“\nThemaxis%f\n”,max);}第72頁,課件共190頁,創(chuàng)作于2023年2月

條件運算說明:1.條件運算符的優(yōu)先級很低,僅僅比賦值運算

符的級別高。2.條件運算符的結(jié)合方式與賦值運算符一樣是

自右至左的。例如:a=3>5?6:4==7?1:0相當(dāng)于a=(3>5?6:(4==7?1:0))第73頁,課件共190頁,創(chuàng)作于2023年2月

條件運算注意:1.C語言程序設(shè)計中,要求盡量避免使用“多余的臨時變量”,盡量把程序表示得簡潔。如上述程序中可以省去一個變量max,寫為main(){floata,b;printf(“input2realsplease:”);scanf(“%f%f”,&a,&b);printf(“\nThemaxis%f\n”,a>b?a:b);}第74頁,課件共190頁,創(chuàng)作于2023年2月

條件運算2.在條件表達(dá)式e1?e2:e3中,e1應(yīng)為算術(shù)表達(dá)式,e2,e3可以是任意類型的表達(dá)式。條件表達(dá)式的值的類型為e2與e3二者中類型較高的。如:表達(dá)式y(tǒng)<3?-1.0:1的值應(yīng)為實型。第75頁,課件共190頁,創(chuàng)作于2023年2月小結(jié):本節(jié)主要介紹了程序分支結(jié)構(gòu)的幾種形式,它包括有if語句,if_else語句,if嵌套語句和switch語句。共同特點是:先進行條件判斷,再根據(jù)判斷結(jié)果決定下一步做什么。switch是一種“多路開關(guān)”語句,用它可更好地完成多路選擇任務(wù),只是在使用中應(yīng)注意break語句的正確使用,以使程序能正常地從switch分支中跳出。第76頁,課件共190頁,創(chuàng)作于2023年2月循環(huán)結(jié)構(gòu)導(dǎo)入循環(huán)從鍵盤輸入10個數(shù),求10個數(shù)中的最大數(shù)?從鍵盤輸入n個數(shù),求n個數(shù)中的最大數(shù)?從鍵盤輸入3個數(shù),求3個數(shù)中的最大數(shù)?第77頁,課件共190頁,創(chuàng)作于2023年2月引例:編寫程序,輸入10個數(shù),輸出其中最大者。分析:輸入第一個數(shù),max=a,i=1i<=10輸入一個數(shù)max>amax=ai=i+1輸出maxTFTF循環(huán)條件循環(huán)體第78頁,課件共190頁,創(chuàng)作于2023年2月循環(huán)結(jié)構(gòu)

循環(huán)就是重復(fù)地執(zhí)行某些語句。

程序中的循環(huán)次數(shù)是有限的,由循環(huán)條件決定可以確定循環(huán)次數(shù)。

C語言提供了3種循環(huán)結(jié)構(gòu)語句:①for語句②while語句③do_while語句第79頁,課件共190頁,創(chuàng)作于2023年2月while語句一般形式:while(表達(dá)式)

循環(huán)體語句;執(zhí)行流程:expr循環(huán)體假(0)真(非0)while第80頁,課件共190頁,創(chuàng)作于2023年2月

while(<循環(huán)表達(dá)式>){循環(huán)語句;循環(huán)變量表達(dá)式;}

關(guān)于while語句的幾點說明。1.循環(huán)變量表達(dá)式不可缺少,其作用是更新計算循環(huán)變量的值,使循環(huán)能正常結(jié)束。2.若沒有循環(huán)變量表達(dá)式,則有可能會使程序出現(xiàn)無限循環(huán)而發(fā)生錯誤。3.由于while循環(huán)是先判斷<循環(huán)表達(dá)式>的值,后決定是否執(zhí)行循環(huán)體語句,因此,循環(huán)體語句有可能一次也沒有執(zhí)行。第81頁,課件共190頁,創(chuàng)作于2023年2月特點:先判斷表達(dá)式,后執(zhí)行循環(huán)體說明:循環(huán)體有可能一次也不執(zhí)行循環(huán)體可為任意類型語句下列情況,退出while循環(huán)條件表達(dá)式不成立(為零)循環(huán)體內(nèi)遇break,return,goto無限循環(huán):while(1)循環(huán)體;第82頁,課件共190頁,創(chuàng)作于2023年2月#include"stdio.h"voidmain(){ inta,max,i; printf("請輸入第1個值"); scanf("%d",&a); max=a; i=2; while(i<=10) { printf("請輸入第%d個值",i); scanf("%d",&a); if(a>max)max=a; i++; } printf(“最大的值是%d\n",max);}?試用while語句編寫程序:求輸入十個數(shù)中的最大值。十個數(shù)最大值第83頁,課件共190頁,創(chuàng)作于2023年2月例用while循環(huán)求

#include<stdio.h>main(){inti,sum=0;i=1;while(i<=100){sum=sum+i;i++;}printf("%d",sum);}循環(huán)初值循環(huán)終值循環(huán)變量增值循環(huán)條件循環(huán)體求100個整數(shù)的和第84頁,課件共190頁,創(chuàng)作于2023年2月計算10年后人口增長的C程序。/******計算人口增長******/#include<stdio.h>intmain(void){doublem=13;inti=1;

while(i<=10){ m=m*(1+0.002); i++;}printf("Populationafter10yersis:%f\n",m);return0;}人口增長第85頁,課件共190頁,創(chuàng)作于2023年2月將輸入的字符原樣輸出/******測試字符結(jié)束符******/#include<stdio.h>intmain(void){ intc; while((c=getchar())!=EOF) putchar(c); return0;}程序中的“EOF”是一個符號常數(shù),稱為文件結(jié)束標(biāo)志,它是在文件stdio.h中定義的: #defineEOF-1當(dāng)從鍵盤輸入(Ctrl+Shift+z)或遇文件結(jié)束標(biāo)記,c的值得到-1,等于EOF。字符輸入輸出第86頁,課件共190頁,創(chuàng)作于2023年2月求階乘n!求p=1×2×3×4×……×n(n≤10)初始值:p=1;i=1;p=p*i;i++;第87頁,課件共190頁,創(chuàng)作于2023年2月思考即:s=1+3+5+……+n求1~n的奇數(shù)累加和s=s+i;i=i+2;s=0;i=1;初始值:第88頁,課件共190頁,創(chuàng)作于2023年2月思考即:s=2+4+6+……+n求1~n的偶數(shù)累加和s=s+i;i=i+2;s=0;i=2;初始值:第89頁,課件共190頁,創(chuàng)作于2023年2月do~while語句一般形式:do

循環(huán)體語句;

while(表達(dá)式);執(zhí)行流程:do循環(huán)體expr假(0)真(非0)while第90頁,課件共190頁,創(chuàng)作于2023年2月特點:先執(zhí)行循環(huán)體,后判斷表達(dá)式說明:至少執(zhí)行一次循環(huán)體do~while可轉(zhuǎn)化成while結(jié)構(gòu)expr循環(huán)體假(0)真(非0)循環(huán)體While循環(huán)第91頁,課件共190頁,創(chuàng)作于2023年2月用do~while循環(huán)求

#include<stdio.h>main(){inti,sum=0;i=1;do{sum+=i; i++;}while(i<=100);printf("%d",sum);}第92頁,課件共190頁,創(chuàng)作于2023年2月while和do~while比較#include<stdio.h>main(){inti,sum=0;scanf("%d",&i);

do{sum+=i; i++;}while(i<=10);printf("%d",sum);}#include<stdio.h>main(){inti,sum=0;

scanf("%d",&i);while(i<=10){sum+=i; i++;}printf("%d",sum);}寫法不同實現(xiàn)的功能相同第93頁,課件共190頁,創(chuàng)作于2023年2月第一次運行:1↙再運行一次:11↙sum=55sum=11第一次運行:1↙再運行一次:11↙sum=55sum=0While結(jié)構(gòu)運行情況:do~while結(jié)構(gòu)運行情況:結(jié)論:while和do…while結(jié)構(gòu)何時相同?何時不同?第94頁,課件共190頁,創(chuàng)作于2023年2月例顯示1~10的平方#include<stdio.h>main(){inti=1;while(i<=10){printf("%d*%d=%d\n",i,i,i*i);i++;}}平方第95頁,課件共190頁,創(chuàng)作于2023年2月找出100到200之間能被3整除的自然數(shù)#include<stdio.h>main(){intn;n=100;do{ if(n%3==0) printf(“%d\t",n); n++;}while(n<=200);}被3整除的自然數(shù)第96頁,課件共190頁,創(chuàng)作于2023年2月/******測試字符結(jié)束符******/#include〈stdio.h〉intmain(void){intc;do{c=getchar();putchar(c);}while(c!=EOF);return0;}第97頁,課件共190頁,創(chuàng)作于2023年2月一般形式:while(表達(dá)式)

循環(huán)體語句;執(zhí)行流程:expr循環(huán)體假(0)真(非0)whileWhile小結(jié)第98頁,課件共190頁,創(chuàng)作于2023年2月一般形式:do

循環(huán)體語句;

while(表達(dá)式);執(zhí)行流程:do循環(huán)體expr假(0)真(非0)whileDoWhile小結(jié)第99頁,課件共190頁,創(chuàng)作于2023年2月特點:先執(zhí)行循環(huán)體,后判斷表達(dá)式說明:至少執(zhí)行一次循環(huán)體do~while可轉(zhuǎn)化成while結(jié)構(gòu)expr循環(huán)體假(0)真(非0)循環(huán)體While循環(huán)第100頁,課件共190頁,創(chuàng)作于2023年2月循環(huán)結(jié)構(gòu)的三個基本要素循環(huán)變量初始化,如:i=1;s=0;循環(huán)條件,如:i<=100循環(huán)趨向結(jié)束語句,如:i++;第101頁,課件共190頁,創(chuàng)作于2023年2月for語句一般形式:for([expr1];[expr2];[expr3])

循環(huán)體語句;第102頁,課件共190頁,創(chuàng)作于2023年2月for語句執(zhí)行流程:expr2循環(huán)體假(0)真(非0)forexpr1expr3expr1;while(expr2){ 循環(huán)體語句; expr3;}第103頁,課件共190頁,創(chuàng)作于2023年2月for語句一般應(yīng)用形式:for(循環(huán)變量賦初值;循環(huán)條件;循環(huán)變量增值){ 循環(huán)體語句;}第104頁,課件共190頁,創(chuàng)作于2023年2月說明:for語句中expr1,expr2,expr3類型任意,都可省略,但分號;不可省無限循環(huán):for(;;)for語句可以轉(zhuǎn)換成while結(jié)構(gòu)第105頁,課件共190頁,創(chuàng)作于2023年2月while(){循環(huán)體語句;

}for(expr1;

expr2;expr3){

循環(huán)體語句;}do{循環(huán)體語句;

}while();expr1;expr2expr3;expr1;expr2expr3;第106頁,課件共190頁,創(chuàng)作于2023年2月例用for循環(huán)求

#include<stdio.h>main(){inti,sum=0;

for(i=1;i<=100;i++) sum+=i;printf("%d",sum);}#include<stdio.h>voidmain(){inti,s=0;i=1;

while(i<=100){s=s+i; i++;}printf("%d\n",s);}第107頁,課件共190頁,創(chuàng)作于2023年2月#include<stdio.h>main(){inti=0;for(;i<10;i++) putchar(‘a(chǎn)’+i);}#include<stdio.h>main(){inti=0;for(i=0;i<10;i++) putchar(‘a(chǎn)’+i);}例:從a開始輸出十個字符。輸出十個字符#include<stdio.h>main(){inti=0;for(;i<10;putchar(‘a(chǎn)’+i),i++)

;}missing';'before'}'第108頁,課件共190頁,創(chuàng)作于2023年2月main(){inti,j,k;

for(i=0,j=100;i<=j;i++,j--){k=i+j; printf("%d+%d=%d\n",i,j,k);}}#include<stdio.h>main(){charc;

for(;(c=getchar())!='\n';)printf("%c",c);}#include<stdio.h>main(){inti,c;

for(i=0;(c=getchar())!='\n';i+=3) printf("%c",i+c);}第109頁,課件共190頁,創(chuàng)作于2023年2月關(guān)于for循環(huán)的說明:(1)expr1可以省略,但是其后的分號不能省略。如:for(i=1;i<=100;i++)sum+=i;i=1;for(;i<=100;i++)sum+=i;等價于第110頁,課件共190頁,創(chuàng)作于2023年2月(2)expr3可以省略,但是其前的分號不能省略。如:for(i=1;i<=100;){sum+=i;

i++;}關(guān)于for循環(huán)的說明:for(i=1;i<=100;i++)sum+=i;等價于第111頁,課件共190頁,創(chuàng)作于2023年2月(3)

可以同時省略expr1和expr3。如:求1~100的和i=1;for(;i<=100;){sum+=i;

i++;}關(guān)于for循環(huán)的說明:for(i=1;i<=100;i++)sum+=i;等價于第112頁,課件共190頁,創(chuàng)作于2023年2月關(guān)于for循環(huán)的說明:(4)若expr2省略,會導(dǎo)致死循環(huán)。如:for(i=1;;i++)sum+=i;等價于i=1;while(1){sum+=i;i++;}所以,從功能上講:expr2不能省略第113頁,課件共190頁,創(chuàng)作于2023年2月(5)expr1,expr2,expr3也可以包含其他功能的表達(dá)式。關(guān)于for循環(huán)的說明://求1~100的和s=0;for(i=1;i<=100;i++)s=s+i;//求1~100的和for(s=0,i=1;i<=100;s=s+i,i++);第114頁,課件共190頁,創(chuàng)作于2023年2月expr2一般是循環(huán)條件表達(dá)式,也可以包含其他功能的表達(dá)式。#include<stdio.h>voidmain(){charch;printf("輸入一串字符,回車鍵結(jié)束:");ch=getchar();for(;ch!='\n';){printf("%c\n",ch);ch=getchar();}}在獲取值的同時進行判斷for(;(ch=getchar())!='\n';)printf("%c\n",ch);第115頁,課件共190頁,創(chuàng)作于2023年2月while的循環(huán)條件中也可以包含其他表達(dá)式#include<stdio.h>voidmain(){charch;printf("輸入一串字符,回車鍵結(jié)束:");for(;(ch=getchar())!='\n';)printf("%c\n",ch);}在獲取值的同時進行判斷while((ch=getchar())!='\n')第116頁,課件共190頁,創(chuàng)作于2023年2月循環(huán)的嵌套定義:一個循環(huán)體內(nèi)又包含另一個完整的循環(huán)結(jié)構(gòu)。一般形式:…while(條件表達(dá)式){

循環(huán)體語句組;}……do{循環(huán)體語句組;}while(條件表達(dá)式);…外層內(nèi)層…for(expr1;expr2;expr3){循環(huán)體語句組;}……while(條件表達(dá)式){循環(huán)體語句組;}…第117頁,課件共190頁,創(chuàng)作于2023年2月執(zhí)行過程:執(zhí)行一次外層循環(huán)時:內(nèi)層循環(huán)要執(zhí)行到條件不滿足時(內(nèi)層循環(huán)是多個小循環(huán),外層循環(huán)是一個大循環(huán))第118頁,課件共190頁,創(chuàng)作于2023年2月基本原則:1、外層循環(huán)的“變量初始化”在外層循環(huán)之前;2、內(nèi)層循環(huán)的“變量初始化”在外層循環(huán)之內(nèi)(適當(dāng)位置)——內(nèi)層循環(huán)之前;內(nèi)層循環(huán)可以盡量使用for結(jié)構(gòu)第119頁,課件共190頁,創(chuàng)作于2023年2月#include<stdio.h>voidmain(){inti,j;longs,p;//s存放和值,p存放階乘

//i外層循環(huán)變量,j內(nèi)層循環(huán)變量

for(s=0,i=1;i<=10;i++)

{

for(j=1,p=1;j<=i;j++)p=p*j;

s=s+p;

}

printf("result=%ld",s);}第120頁,課件共190頁,創(chuàng)作于2023年2月循環(huán)的嵌套三種循環(huán)可互相嵌套,層數(shù)不限外層循環(huán)可包含兩個以上內(nèi)循環(huán),但不能相互交叉嵌套循環(huán)的執(zhí)行流程(1)while(){……while(){……}…...}(2)do{……do{……}while();…...}while();(3)while(){……do{……}while();…….}(4)for(;;){……do{……}while();……while(){……}…...}嵌套循環(huán)的跳轉(zhuǎn)禁止:從外層跳入內(nèi)層跳入同層的另一循環(huán)向上跳轉(zhuǎn)第121頁,課件共190頁,創(chuàng)作于2023年2月例循環(huán)嵌套,輸出九九乘法表1234567891234567892468101214161836912151821242791827364554637281……………..ij第122頁,課件共190頁,創(chuàng)作于2023年2月i<10printf假(0)真(非0)i=1j++j=1j<10真(非0)假(0)i++for(i=1;i<10;i++)

for(j=1;j<10;j++)printf((j==9)?"%4d\n":"%4d",i*j);外循環(huán)內(nèi)循環(huán)#include<stdio.h>main(){inti,j;for(i=1;i<10;i++)printf("%4d",i);printf("\n---------------------------------------\n");

for(i=1;i<10;i++)for(j=1;j<10;j++) printf((j==9)?"%4d\n":"%4d",i*j);}九九乘法表第123頁,課件共190頁,創(chuàng)作于2023年2月break語句作用:從循環(huán)體內(nèi)跳出循環(huán)體外,強制性提前結(jié)束循環(huán)。一般形式:break;特點:①通常與if語句搭配使用;②只能用于循環(huán)結(jié)構(gòu)和switch結(jié)構(gòu)。不能用于其他語句中第124頁,課件共190頁,創(chuàng)作于2023年2月while(循環(huán)條件表達(dá)式){……

if(表達(dá)式x)

break;……}break執(zhí)行示意for(表達(dá)式1;表達(dá)式2;表達(dá)式3){……

if(表達(dá)式x)

break;……}第125頁,課件共190頁,創(chuàng)作于2023年2月例break舉例:輸出圓面積,面積大于100時停止#definePI3.14159main(){intr;floatarea;for(r=1;r<=10;r++){area=PI*r*r;

if(area>100) break;printf("r=%d,area=%.2f\n",r,area);}}九九乘法表第126頁,課件共190頁,創(chuàng)作于2023年2月例break舉例:小寫字母轉(zhuǎn)換成大寫字母,直至輸入非小寫字母#include<stdio.h>main(){inti,j;charc;while(1){c=getchar(); if(c>='a'&&c<='z') putchar(c-'a'+'A'); else

break;}}小寫字母轉(zhuǎn)成大寫字母第127頁,課件共190頁,創(chuàng)作于2023年2月作用:提前結(jié)束本次循環(huán),判斷<循環(huán)條件表達(dá)式>是否成立。continue語句一般形式:continue;特點:①通常與if語句搭配使用;②與break的區(qū)別:不是終止整個循環(huán)的執(zhí)行,只是提前結(jié)束本次循環(huán);第128頁,課件共190頁,創(chuàng)作于2023年2月while(循環(huán)條件表達(dá)式){……

if(表達(dá)式y(tǒng))

continue;……}continue執(zhí)行示意for(表達(dá)式1;表達(dá)式2;表達(dá)式3){……

if(表達(dá)式y(tǒng))

continue;……}第129頁,課件共190頁,創(chuàng)作于2023年2月例求輸入的十個整數(shù)中正數(shù)的個數(shù)及其平均值main(){inti,num=0,a;floatsum=0;do{scanf("%d",&a); if(a>0) {num++; sum+=a;} i++;}while(i<=10);printf("%dplusinteger'ssum:%6.0f\n",num,sum);printf("Meanvalue:%6.2f\n",sum/num);}十個正數(shù)的和main(){inti,num=0,a;floatsum=0;for(i=0;i<10;i++){scanf("%d",&a); if(a<=0)continue; num++; sum+=a;}printf("%dplusinteger'ssum:%6.0f\n",num,sum);printf("Meanvalue:%6.2f\n",sum/num);}第130頁,課件共190頁,創(chuàng)作于2023年2月找出100到200之間能被3整除的自然數(shù)#include<stdio.h>main(){intn;for(n=100;n<=200;n++){if(n%3!=0)continue;

printf("%d,",n);}}#include<stdio.h>main(){intn;n=100;do{ if(n%3==0) printf(“%d\t",n); n++;}while(n<=200);}continue_3整除第131頁,課件共190頁,創(chuàng)作于2023年2月*132/44break語句和continue語句在程序中的區(qū)別/*break的作用*/main(){ intx; for(x=1;x<=10;++x) { if(x==5) break; printf("%d",x); }}運行結(jié)果:1,2,3,4,/*continue的作用*/main(){ intx; for(x=1;x<=10;++x) { if(x==5) continue; printf("%d,",x); }}運行結(jié)果:1,2,3,4,6,7,8,9,10,第132頁,課件共190頁,創(chuàng)作于2023年2月*133/44三種循環(huán)結(jié)構(gòu):for、while和do_while循環(huán)。當(dāng)循環(huán)次數(shù)是肯定的情況下,用for循環(huán)比較方便。while循環(huán)和for循環(huán)都要先判斷條件再執(zhí)行循環(huán)語句體,因此,有可能一次也不執(zhí)行循環(huán)語句體。do_while循環(huán)不論怎樣都會先執(zhí)行一次循環(huán)語句體。注意避免以下幾個方面的問題:1.循環(huán)語句體為復(fù)合語句,但沒有使用花括號。2.使程序發(fā)生無限循環(huán)。3.混淆break語句與continue語句的功能。小結(jié)第133頁,課件共190頁,創(chuàng)作于2023年2月案例分析九九乘法表——僅輸出for(i=1;i<10;i++)for(j=1;j<10;j++) printf((j==9)?"%4d\n":"%4d",i*j);if(j!=9) printf("%4d",i*j);else printf("%4d\n",i*j);第134頁,課件共190頁,創(chuàng)作于2023年2月i=1→j=1to9i=2→j=2to9↓i=9→j=9第1行→從第1個位置輸出%4d→無空第2行→從第2個位置輸出%4d→空1個空第3行→從第3個位置輸出%4d→空2個空↓第9行→從第9個位置輸出%4d→空8個空第135頁,課件共190頁,創(chuàng)作于2023年2月九九乘法表——右下方for(i=1;i<10;i++){ if(i!=1) { for(k=1;k<i;k++) printf("%4c",''); } for(j=i;j<10;j++) printf((j==9)?"%4d\n":"%4d",i*j);}注意:有個空格第136頁,課件共190頁,創(chuàng)作于2023年2月前6行:第1行1個*→空5個空第2行3個*→空4個空第3行5個*→空3個空↓第6行11個*→

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論