第3章順序結(jié)構(gòu)程序設(shè)計_第1頁
第3章順序結(jié)構(gòu)程序設(shè)計_第2頁
第3章順序結(jié)構(gòu)程序設(shè)計_第3頁
第3章順序結(jié)構(gòu)程序設(shè)計_第4頁
第3章順序結(jié)構(gòu)程序設(shè)計_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

04二月20231第3章順序結(jié)構(gòu)程序設(shè)計教學(xué)要求:

掌握表達(dá)式語句的格式,理解表達(dá)式與表達(dá)式語句的區(qū)別;掌握格式輸入/輸出函數(shù)和字符輸入/輸出函數(shù)的使用方法。教學(xué)內(nèi)容:

3.1程序設(shè)計的基本概念

3.2C語言語句

3.3格式化輸入/輸出函數(shù)

3.4字符輸入/輸出函數(shù)

3.5程序設(shè)計舉例04二月20232

程序:就是一系列遵循一定規(guī)則和思想并能正確完成指定工作的代碼序列。描述問題的對象及其之間的關(guān)系描述這些對象進(jìn)行處理的規(guī)則數(shù)據(jù)結(jié)構(gòu)算法程序

程序設(shè)計:是根據(jù)計算機要完成的任務(wù),提出相應(yīng)的需求,設(shè)計程序?qū)ο蟮臄?shù)據(jù)結(jié)構(gòu)和處理算法,編寫相應(yīng)的程序代碼并測試代碼的正確性,通過運行得到合理的結(jié)果的過程。3.1程序設(shè)計的基本概念04二月20233程序設(shè)計從兩方面進(jìn)行數(shù)據(jù)結(jié)構(gòu)設(shè)計對象操作設(shè)計聲明變量數(shù)據(jù)類型、完成數(shù)據(jù)初始化完成操作代碼,實現(xiàn)對數(shù)據(jù)加工和流程控制例如:對任意的兩個整數(shù)進(jìn)行求余運算并輸出其結(jié)果首先聲明兩個變量:a和b;并完成對a和b的賦值。其次完成a和b的加工處理:a%b并輸出結(jié)果。程序設(shè)計要求:結(jié)構(gòu)清晰、存儲空間小、執(zhí)行速度快。3.1程序設(shè)計的基本概念04二月20234

算法:是為完成一項任務(wù)所應(yīng)遵循的一步一步的、規(guī)則的、精確的、無歧義的描述,它的總步數(shù)是有限的。

算法特點:有窮性;確定性;有零個或多個輸入;有一個或多個輸出;有效性。算法的描述:自然語言;流程圖;N-S圖;偽代碼等判斷開始結(jié)束處理流線輸入/輸出3.1程序設(shè)計的基本概念04二月202353.2C語言的基本語句C語言程序的基本組成單位是函數(shù),而函數(shù)是由語句構(gòu)成的,語句分?jǐn)?shù)據(jù)設(shè)計語句;語句分操作設(shè)計語句。在C中共有以下五類語句。C語言的語句表達(dá)式語句函數(shù)調(diào)用語句控制語句復(fù)合語句空語句表達(dá)式加分號“;”組成。如:i++;函數(shù)名(實際參數(shù));構(gòu)成。條件判斷、循環(huán)執(zhí)行、轉(zhuǎn)向語句。多條語句用{}括起來,構(gòu)成新語句。只有一個;組成的語句。04二月202363.3格式化輸出/輸入函數(shù) C語言沒有專門的輸入/輸出語句,實現(xiàn)輸入/輸出通過調(diào)用C語言輸入/輸出庫函數(shù),調(diào)用輸入/輸出庫函數(shù),必須用包含命令將其頭文件stdio.h包含到用戶程序中。3.3.1格式化輸出函數(shù)printf()格式:printf("格式字符串",輸出列表);1.格式字符串:由格式說明符、普通字符和轉(zhuǎn)義字符構(gòu)成。2.輸出列表:若干輸出項構(gòu)成,輸出項間用逗號隔開。如:printf("i=%d,j=%d,m=%d,n=%d\n",i,j,m,n);04二月20237#include<stdio.h>intmain(){inti,j,m,n;i=5;j=15;m=i++;n=++j;printf("i=%d,j=%d,m=%d,n=%d\n",i,j,m,n);return0;}【例題3.1】閱讀下列程序,認(rèn)識格式輸出函數(shù)的用法,寫結(jié)果格式控制字符串輸出列表項

練習(xí):要求編寫輸出a=12,b=12.3456,ch=‘a(chǎn)’的程序。04二月20238格式說明

格式說明由“%”與不同的格式字符組成,用來說明各輸出項的數(shù)據(jù)類型、長度和小數(shù)點位數(shù)。常用的幾種格式符如下:※%d:按十進(jìn)制數(shù)形式輸出。※

%o:按八進(jìn)制數(shù)形式輸出。※

%u:按十進(jìn)制數(shù)形式輸出無符號型數(shù)據(jù)。※

%c:輸出一個字符。※

%s:輸出一個字符串。※

%f:按實型數(shù)據(jù)輸出且有6位的小數(shù)點。※

%e:按實型數(shù)據(jù)輸出且按指數(shù)形式※

%g:按實型數(shù)據(jù)輸出由系統(tǒng)自動選擇f格式或e格式。04二月202393.3.2格式輸入函數(shù)scanf#include<stdio.h>intmain(){ inta,b,c; floataver; printf("請輸入三個數(shù)a,b,c:"); scanf("%d%d%d",&a,&b,&c); aver=(a+b+c)/3; printf("aver=%f\n",aver); return0;}閱讀下列程序,認(rèn)識scanf()函數(shù)的用法格式控制字符串(注意表示形式)輸入地址列表04二月202310格式:scanf("格式控制字符串",輸入地址列表);格式控制字符串形式:%[*][輸入數(shù)據(jù)寬度][長度]類型※

類型:輸入數(shù)據(jù)的類型,同printf的類型一致?!?/p>

*:表示輸入項,輸入后不賦給相應(yīng)的變量跳過輸入值※

輸入數(shù)據(jù)寬度:用十進(jìn)制整數(shù)指定輸入寬度即字符數(shù)如:scanf("%4d%4d",&a,&b);

輸入:12345678↙則執(zhí)行后a=1234b=5678※長度:長度格式符用l和h表示。如:%ld表示輸入長整型;%lf表示雙精度浮點型。輸入地址:由地址運算符&和變量名組成。04二月202311輸入數(shù)據(jù)格式與輸入方法1.相鄰兩個格式符間沒指出分隔符,則輸入數(shù)據(jù)時用空格或回車(除%c外)。2.格式字符串中出現(xiàn)普通字符,輸入時原樣輸入。3.實型數(shù)據(jù)輸入時不能規(guī)定其精度。4.使用格式符%c時,輸入空格或回車符都被接收5.整型、實型和字符型數(shù)據(jù)混合輸入,要注意輸入格式如:scanf("%d%f%c",&a,&b,&c);scanf("a=%d,b=%f,c=%c",&a,&b,&c);scanf("%d%c%f",&a,&b,&c);1223aa=12,b=23,c=a12a2342014.9.2413建筑本3-404二月202312使用scanf()函數(shù)注意的幾個問題※輸入時不能規(guī)定精度。如:scanf("%7.3f",&a);※要求給出地址不能是變量名。如:scanf("%f",a);※輸入多個數(shù)據(jù)時要注意間隔符的運用。如:scanf("%d%d%d",&a,&b,&c);則間隔符為空格如:scanf(“%d,%d,%d”,&a,&b,&c);則間隔符為逗號如:scanf(“%d;%d;%d”,&a,&b,&c);則間隔符為分號※

使用%s格式符時,讀入字符串,若輸入字符串有空格或Tab鍵,只將其前的字符讀入,之后的字符串并不讀入。※

不能使用%u。04二月202313【例題3.3】閱讀程序,按規(guī)定格式輸入,分析程序結(jié)果#include"stdio.h"intmain(){ inti,j; floatf1,f2; charch1,ch2; printf("請輸入i,f1,ch1,ch2的值:\n"); scanf("%d%f%c%c",&i,&f1,&ch1,&ch2); j=i++; f2=++f1; printf("i=%d;j=%d\n",i,j); printf("f1=%3.3f;f2=%4.2f\n",f1,f2); printf("ch1=%c;ch2=%c\n",ch1,ch2); return0;}第1個同學(xué)輸入:18□26.9□B□b回車第2個同學(xué)輸入:18 26.9Bb第3個同學(xué)輸入:18 26.9Bb04二月2023143.4字符輸入/輸出函數(shù)【例題3.4.1】通過鍵盤輸入一個小寫字母,輸出該字母的大寫。分析:輸入可采用格式輸入函數(shù)scanf()實現(xiàn),輸出可采用格式輸出函數(shù)printf()實現(xiàn),使用格式符%c。小寫字母與大寫字母的ASCII碼值相差32。思考:不用格式輸入/輸出函數(shù)能不能完成?能,用C語言提供的另一類函數(shù)即字符輸入/輸出函數(shù)。04二月2023151.字符輸出函數(shù)putchar()格式:putchar(ch)函數(shù)功能:向標(biāo)準(zhǔn)輸出設(shè)備輸出一個字符。其中,ch可以是一個字符常量或變量,也可以是一個整型常量或變量。說明:ch是字符常量或變量,輸出的是ch的值;ch是整型常量或變量,輸出的是ch的ASCII字符。inta=98;charch='a';putchar(ch);putchar('\n');putchar(a);輸出結(jié)果:a輸出結(jié)果:換行輸出結(jié)果:b04二月2023162.字符輸入函數(shù)getchar()格式:getchar()函數(shù)功能:從輸入設(shè)備(通常是鍵盤)上輸入一個字符,函數(shù)返回值是該字符的ASCII碼值,函數(shù)返回值可以賦值給一個字符型變量,也可賦給一個整型變量。說明:輸入字符后以回車確認(rèn);若只輸入回車符則將其讀入。charch;ch=getchae();功能:等待用戶從鍵盤輸入一字符賦給ch04二月202317【例題3.4】編寫程序輸出以下格式的數(shù)據(jù)形式。要求對i,j,a,b采用格式輸入/輸出函數(shù)實現(xiàn)輸入/輸出;對ch1,ch2采用字符函數(shù)實現(xiàn)輸入/輸出。 a=10.23;b=2.781 i=12;j=48 ch1=A,ch2=a算法分析:按要求在程序中定義實型變量a,b并按格式符%f實現(xiàn)輸入,但在輸出時要控制輸出小數(shù)位數(shù);在程序中定義整型變量i,j并按格式符%d實現(xiàn)輸入/輸出;在程序中定義字符變量ch1,ch2用字符函數(shù)實現(xiàn)輸入,但在輸出時用多條字符輸出函數(shù)實現(xiàn)。

程序代碼:04二月2023183.5程序設(shè)計舉例【例題3.5】編寫程序:輸入任意的3個數(shù),求它們的和及平均數(shù)。算法分析:定義3個實型數(shù)據(jù)num1,num2,num3,采用格式輸入函數(shù)scanf()輸入3變量的值(注意輸入格式)。定義一個存放和的實型數(shù)據(jù)sum和存放平均數(shù)的實型數(shù)據(jù)average。利用數(shù)學(xué)的求和公式、求平均數(shù)公式求出(注意數(shù)學(xué)表達(dá)式與C語言表達(dá)式書寫上的區(qū)別)。采用格式輸出函數(shù)進(jìn)行輸出。

程序代碼:04二月202319

【例題3.6】編寫程序:輸入矩形的長、寬,輸出矩形的周長和面積。算法分析:定義實型變量long、wide、girth、area分別表示長、寬、周長和面積。調(diào)用輸入函數(shù),輸入long、wide。利用數(shù)學(xué)周長公式、面積公式求出girth、area。調(diào)用輸出函數(shù)輸出周長和面積。

程序代碼:04二月202320【例題3.7】編寫程序,從鍵盤輸入一個三位整數(shù),逆序輸出。算法分析:定義一個整型數(shù)據(jù)num,調(diào)用輸入函數(shù),輸入一個三位整數(shù)。如果能將這三位數(shù)的個位、十位、百位拆分開來,則可用數(shù)學(xué)公式重組一個新的三位數(shù)。調(diào)用輸出函數(shù),輸出新的三位數(shù)。拆分三位數(shù)的方法可用C語言提供求余運算和整除運算來實現(xiàn)。具體過程是:百位數(shù)=num/100;十位數(shù)=num/10%10;個位數(shù)=num%10。要體會程序中輸出項是表達(dá)式的用法。

程序代碼:62014.9.2813建筑本3-404二月202321【例題3.8】編寫程序:求方程ax2+bx+c=0的實根。算法分析:定義三個實型數(shù)據(jù)a、b、c,調(diào)用輸入函數(shù)分別輸入a、b、c的值。定義方程的兩個根x1、x2和判別式dise,本題要求輸入數(shù)據(jù)滿足a≠0且b2-4ac>0。按數(shù)學(xué)方法求解方程的根并輸出。要注意數(shù)學(xué)求方程根的表達(dá)式要符合C語言表達(dá)式的要求,C語言求平方根是通過調(diào)用平方根函數(shù)sqrt()完成,而平方根函數(shù)sqrt()的聲明放在頭文件math.h中。

程序代碼:52014.9.2813建筑本3-404二月202322【例題3.9】編寫程序,從鍵盤輸入兩個整數(shù)給變量a和b,然后交換a和b的值,再輸出a和b。算法分析:交換兩變量的值的方法有兩種。第一種是通過第三變量來實現(xiàn),其過程是先將a的值保存到c變量中,再將b變量賦給a即此時a就是b的值,最后c變量的值賦給b變量即此

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論