版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第三章順序結構程序設計【教學要求】1.了解C語言程序的特點:C程序是由函數(shù)組成的2.C程序的三種基本結構:掌握C程序的順序結構、選擇結構、循環(huán)結構。3.掌握賦值語句構成與使用要點。4.熟練掌握格式輸入/輸出函數(shù)的使用方法。5.能編寫簡單的順序結構程序。
教學要點1、C語句概述
C程序結構
C語句的構成2、結構化程序的三種基本形式結構化程序的三種形式:順序、選擇、循環(huán)。3、數(shù)據的輸入與輸出
C語言輸入輸出的實現(xiàn):C語言沒有提供輸入輸出語句,而是由輸入輸出函數(shù)來實現(xiàn)的。標準的庫函數(shù)的使用。
輸出函數(shù)putchar()、printf()的使用。輸入函數(shù)getchar()
、scanf()的使用。...C程序結構C程序源程序文件1源程序文件2源程序文件n預編譯命令函數(shù)1函數(shù)n說明部分執(zhí)行部分(語句)C語句的構成1、控制語句:用于完成一定的控制功能。組成:例:2、函數(shù)調用語句:用于完成一次函數(shù)調用。組成:由一次函數(shù)調用+“;”構成。例:printf(“ThisisaCstatement!”);3、表達式語句:用于完成一次表達式操作。組成:由一個表達式+“;”構成。例:a=3;i++;等4、空語句:用作被轉向點或循環(huán)語句中的循環(huán)體。組成:只由一個“;”構成。5、復合語句:完成一些特定的操作功能。組成:將一些語句用{}括起來構成,在程序中當作一個語句看待。例:main(){…{z=x+y;t=z/100;printf(“%f”,t);}…}控制語句條件語句:if<條件>~else~(或?:)循環(huán)語句:for()~條件循環(huán):while(){~}條件循環(huán):do{~}while();結束本次循環(huán)語句:continue終止循環(huán)或switch語句:break多分支選擇語句:switch(){case...;~}轉向語句:goto由函數(shù)返回語句:return結構化程序設計方法1、含義:它要求程序設計者按照一定的結構形式來設計和編寫程序。2、引入結構化程序設計方法的原因:使程序易讀、易理解、易修改,以提高程序設計和維護工作的效率。3、結構化程序的三種基本結構:順序結構、選擇結構、循環(huán)結構。4、結構化程序設計的方法:自頂向下、逐步精化。例:求一組正數(shù)中的最大者。求一組正數(shù)中的最大者找出這些數(shù)中的最大的數(shù)打印最大數(shù)使max=0逐個讀入數(shù)據,把最大者送到max中結構化程序的三種形式1、順序結構程序2、選擇結構程序if~else~選擇結構多分支選擇結構(switch)3、循環(huán)結構程序while(){~}循環(huán)do{~}while();循環(huán)for(){~}循環(huán)順序結構程序1、基本結構2、執(zhí)行過程:先執(zhí)行A操作,再執(zhí)行B操作ABAB選擇結構程序1、基本結構:2、執(zhí)行過程:當條件P成立時執(zhí)行A操作,當條件P不成立時執(zhí)行B操作。TFBBAAPPFT循環(huán)結構程序:當型循環(huán)當P條件成立時,反復執(zhí)行A操作,直到P為假時才跳出循環(huán)。TFPA當P為真A循環(huán)結構程序:直到型循環(huán)先執(zhí)行A操作,再判斷條件P是否成立,若為假,再執(zhí)行A,直到條件為真跳出循環(huán)。PAFT直到P為假A賦值語句1、構成:由賦值表達式加上一個分號(;)構成。如:a=12;2、使用要點:(1)在賦值表達式中,“=”作為賦值運算符;理解n=n+1的含義與“存儲覆蓋”的原理(2)區(qū)別賦值表達式與賦值語句是兩個不同的概念。如:if((a=b)>0)t=a;(正確)
if((a=b;)>0)t=a;(錯誤)(3)例題:例exp3_1:main(){inta,b;
scanf(“%d%d”,&a,&b);if(a>=b)c=aelsec=b;
printf(“c=%d”,c);}如果輸入23,輸出為c=3;如果輸入32,輸出為c=3。putchar()函數(shù)1、功能:將一個字符輸出到標準輸出設備。2、格式:putchar(c)3、使用要點:putchar(c)中的c可以是字符型或整型數(shù)據;
c=98;putchar(c)輸出字符b
putchar(‘a’)輸出字符aputchar(0x41)輸出字符A使用輸出函數(shù)需要調用c的標準I/O庫函數(shù),故需用預編譯命令:
#include<stdio.h>
將stdio.h文件包含在用戶源程序文件中;putchar()也可以輸出一個控制字符或其它轉義字符。如:putchar(‘\n’)輸出一個換行符
putchar(‘\101’)輸出字符Aputchar(‘\’’)輸出字符單引號’4、舉例:例exp3_2:#include<stdio.h>main(){chara,b,c;a=‘B’;b=‘o’;c=‘y’;putchar(a);putchar(b);putchar(c);}輸出結果為:Boyprintf()函數(shù)1、功能:按指定的格式向終端輸出若干任意類型的數(shù)據。2、格式:printf(格式控制,輸出表列)
如:printf(“x=%d”,x)3、使用要點
(1)格式控制部分的用法:
(2)輸出表列:可以是合法的常量、變量和表達式,輸出項表中的個輸出項之間要用“,”分隔。(3)當格式符個數(shù)少于輸出項時,多余的輸出項不予輸出。若格式符多于輸出項時,各系統(tǒng)的處理有所不同,TC對于缺少的項將輸出不定值。
(4)每次調用printf函數(shù)之后,將得到一個整型的函數(shù)值,該值等于正常輸出的字符個數(shù)。4、舉例:printf()函數(shù)的格式控制1、格式控制字符是用雙引號括起來的字符串,用來確定確定輸出項的格式和需要原樣輸出的字符串。其組成形式為:
“普通字符串%+
0m.nl格式控制字符”其中:輸出數(shù)據項的順序一般按從左至右的順序輸出。格式控制中的普通字符串,照原樣輸出;
如:printf(“a=%d,b=%d”,a,b);%:為C語言規(guī)定的標記符;+
:指定輸出數(shù)據的對齊方式:+為右對齊(可缺?。?;-為左對齊;0:指定輸出的數(shù)據中不使用的位置是否填數(shù)字“0”關于m.n與l的說明:格式控制字符用于指定數(shù)據的輸出形式,可以包含轉義字符,用兩個連續(xù)的“%%”表示輸出字符“%”。2、舉例:格式控制字符printf()中的m.nl格式說明符(1)printf(“%4d,%4d”,a,b);
若a=123,b=12345則輸出為:□123,12345
如果數(shù)據位數(shù)小于m,則左端補空格,若大于m,則按實際輸出。(2)longa=135790;
printf(“%ld”,a);
長整型數(shù)據應采用%ld格式輸出,若采用%d格式則出錯。(3)inta=-1;
printf(“%d,%o”,a,a);輸出為:-1,177777
對于八進制輸出不會輸出帶符號的數(shù)據,長整型數(shù)據用%lo格式輸出,也可以指定寬度。如:printf(“%lo,%8o”,a,a);(4)inta=-1;
printf(“%x,%o,%d”,a,a,a);輸出結果為:ffff,177777,-1
同樣,也可以用%lx輸出長整型數(shù)據或指出輸出寬度,如:printf(“%lx,%12x”,a,a)例exp3_3:#include<stdio.h>main(){unsignedinta=65535;
intb=-2;
printf(“a=%d,%o,%x,%u\n”,a,a,a,a);
printf(“b=%d,%x,%o,%u\n”,b,b,b,b);}輸出為a=-1,177777,ffff,65535b=-2,fffe,177776,65534例exp3_4:字符輸出main(){charc=‘a’;
intk=97;
printf(“%c,%d\n”,c,c);
printf(“%c,%d\n”,k,k);}輸出為:a,97a,97例exp3_5:輸出字符串printf(“%s”,”china”);輸出字符串chinaprintf(“%7s\n”,”china”);輸出字符串□□chinaprintf(“%3s\n”,”china”);輸出字符串chinaprintf(“%5.3s\n”,”china”);輸出字符串□□chiprintf(“%-5.3s\n”,”china”);輸出為chi□□例exp3_6:實型數(shù)據#include<stdio.h>main(){floatx,y,z;doublea,b;x=11111.111,y=22222.222,z=123.456;a=1111111111111.111111111;b=2222222222222.222222222
printf(“%f\n%f\n”,x+y,a+b);printf(“%10f,%10.2f\n”,z,z);
printf(“%e\n”,z);
printf(“%g\n”,z);}輸出為:33333.3339843333333333333.333010123.456001,□□□□123.461.234560e+02123.456□□□getchar()函數(shù)1、功能:從標準輸入設備上讀入一個字符。2、格式:getchar()3、使用要點:getchar()函數(shù)本身沒有參數(shù),其函數(shù)值就是從輸入設備得到的一個字符;由getchar()獲得的字符可以賦值給一個字符或整型變量,也可以作為表達式的一部分;如:c=getchar(a);
putchar(getchar());
printf(“%c”,getchar());使用getchar()函數(shù)要調用c的標準I/O庫函數(shù),應在程序首部加上:#include<stdio.h>4、舉例:例exp3_7:#include<stdio.h>main(){charc;c=getchar();
putchar(c);
printf(“%c\n%d\n”,c,c);}輸入a輸出a 97scanf()函數(shù)1、功能:將從終端(鍵盤)輸入的數(shù)據傳送給對應的變量。2、格式:scanf(格式控制,輸入項地址表)說明:格式控制的含義同printf函數(shù),“%格式控制字符”
輸入項地址表由若干個地址組成,代表每一個變量在內存的地址。表示為:&變量(或數(shù)組與字符串的首地址)每次調用scanf()函數(shù)后,函數(shù)將得到一個整型函數(shù)值,此值等于正常輸入數(shù)據的個數(shù)3、使用要點:4、舉例:scanf()函數(shù)的使用要點1、格式符的個數(shù)必須與輸入項的個數(shù)相等,數(shù)據類型必須從左至右一一對應。2、scanf()函數(shù)中常用的格式符有:3、用戶可以指定輸入數(shù)據的域寬,系統(tǒng)將自動按此域寬截取所讀入的數(shù)據,如:scanf(“%3d%3d”,&a,&b);輸入123456系統(tǒng)自動將123賦值給a,將456賦值給b.4、輸入實型數(shù)據時,用戶不能規(guī)定小數(shù)點后的位數(shù)。scanf(“%7.2f”,&a);是錯誤的.5、輸入實型數(shù)據時,可以不帶小數(shù)點,即按整型數(shù)方式輸入。scanf()函數(shù)的使用要點6、從終端輸入數(shù)值數(shù)據時,遇下述情況系統(tǒng)將認為該項數(shù)據結束:遇到空格、回車符或制表符(TAB),故可用它們作為數(shù)值數(shù)據間的分隔符;遇到寬度結束,如“%4d”表示只取輸入數(shù)據的前4列。遇到非法輸入,如:假設a為整型變量,ch為字符型變量,對于:
scanf(“%d%c”,&a,&ch);
若輸入246a,則系統(tǒng)將認為:a=246,ch=a7、在使用%c格式符時,輸入的數(shù)據之間不需要分隔符標志;空格、回車符都將作為有效字符讀入。scanf(“%c%c%c”,&a,&b,&c);輸入b□o□yb賦值給a,□賦值給b,o賦值給cscanf()函數(shù)的使用要點8、如果格式控制字符串中除了格式說明之外,還包含其它字符,則輸入數(shù)據時,在與之對應的位置上也必須輸入與這些字符相同的字符。如:scanf(“Enteranumber:%d”,&x);
scanf(“%d%d”&a,&b);輸入格式12223
scanf(“%d,%d”,&a,&b);輸入格式122,23
scanf(“a=%d,b=%d”,&a,&b);輸入格式a=123,b=239、格式說明%*表示跳過對應的輸入數(shù)據項不予讀入。如:scanf(“%2d%*2d%2d”,&a,&b);
若輸入1234567
則12賦給a,67
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度建筑公司環(huán)保工程師勞動合同(節(jié)能減排)3篇
- 2025年度公寓租賃與商務辦公服務合同3篇
- 2025年度公司倉庫貨物盤點合同3篇
- 二零二五年度農村土地流轉合同:農村土地流轉中的土地流轉登記與備案
- 二零二五年度幼兒園園長任期社會責任與公益事業(yè)合同3篇
- 2024年中國渦凹氣浮機市場調查研究報告
- 2025年度圖書出版發(fā)行合作協(xié)議3篇
- 2024年沈陽市工人醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫頻考點附帶答案
- 2025年度沙石料加工與市場推廣服務合同3篇
- 2024年沅江市中醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫頻考點附帶答案
- DB31T 1238-2020 分布式光伏發(fā)電系統(tǒng)運行維護管理規(guī)范
- 化妝品不良反應監(jiān)測培訓課件
- 分包計劃范文
- 個人住房質押擔保借款合同書范本(3篇)
- 亞馬遜品牌授權書(英文模板)
- DB52∕T 046-2018 貴州省建筑巖土工程技術規(guī)范
- 醫(yī)療電子票據管理系統(tǒng)建設方案
- 火箭發(fā)動機課件-
- 人教版小學六年級數(shù)學上冊教學反思(46篇)
- atv61變頻器中文手冊
- 農業(yè)機械維修業(yè)開業(yè)技術條件
評論
0/150
提交評論