%工測(cè)中 C語(yǔ)言中的編程規(guī)范

上傳人:fgh****35 文檔編號(hào):248164898 上傳時(shí)間:2024-10-22 格式:PPT 頁(yè)數(shù):43 大?。?42KB
收藏 版權(quán)申訴 舉報(bào) 下載
%工測(cè)中 C語(yǔ)言中的編程規(guī)范_第1頁(yè)
第1頁(yè) / 共43頁(yè)
%工測(cè)中 C語(yǔ)言中的編程規(guī)范_第2頁(yè)
第2頁(yè) / 共43頁(yè)
%工測(cè)中 C語(yǔ)言中的編程規(guī)范_第3頁(yè)
第3頁(yè) / 共43頁(yè)

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《%工測(cè)中 C語(yǔ)言中的編程規(guī)范》由會(huì)員分享,可在線閱讀,更多相關(guān)《%工測(cè)中 C語(yǔ)言中的編程規(guī)范(43頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級(jí),第三級(jí),第四級(jí),第五級(jí),*,C,語(yǔ)言的基本知識(shí),輔助訓(xùn)練,C,語(yǔ)言提要,C,語(yǔ)言的語(yǔ)法,C,語(yǔ)言的基本運(yùn)算及,流程控制語(yǔ)句,控制系統(tǒng)中常用的,C,語(yǔ)言函數(shù),TC2.0,環(huán)境的使用,C,程序的編寫(xiě)和要求,C,語(yǔ)言的語(yǔ)法,-,C,語(yǔ)言的特點(diǎn),C,程序的基本組成:,main(),變量定義,執(zhí)行語(yǔ)句組,子函數(shù)名稱(chēng)1(參數(shù)),變量定義,執(zhí)行語(yǔ)句組,子函數(shù)名稱(chēng)2(參數(shù)),C,語(yǔ)言的語(yǔ)法,-,C,語(yǔ)言的特點(diǎn),程序以函數(shù)為單元,并且有且僅有一個(gè)主函數(shù),main(),;,函數(shù)由函數(shù)說(shuō)明和函數(shù)體兩部分組成;,變量的聲明和定義必須在函數(shù)頭部;,語(yǔ)句必須以“

2、,;”,結(jié)束;,注釋?zhuān)?/*/,C,語(yǔ)言允許直接訪問(wèn)物理地址;可以直接對(duì)硬件進(jìn)行操作;能進(jìn)行位(,bit,)操作,C,語(yǔ)言的語(yǔ)法,(2),-,C,語(yǔ)言的數(shù)據(jù)類(lèi)型,整型:,int,、,short,、,long,(數(shù)據(jù)在內(nèi)存中以,2,進(jìn)制形式存放),字符型:,char,浮點(diǎn)型:,float,、,double,指針:,char*,、,int,*,、,float*,數(shù)組:,int,a10;,結(jié)構(gòu)體,:,struct,公用體:,union,無(wú)符號(hào)數(shù),:,unsigned,(,unsigned,int,;,unsigned char),C,語(yǔ)言的基本運(yùn)算,算術(shù)運(yùn)算,運(yùn)算符,名稱(chēng),例子,運(yùn)算功能,加,a+b

3、,求,a,與,b,的和,減,a,-,b,求,a,與,b,的差,*,乘,a*b,求,a,與,b,的積,/,除,a/b,求,a,除以,b,的商,%,取余,a%b,求,a,除以,b,的余數(shù),+,自增,a,+,a,的值加,1,-,自減,a,-,a,的值減,1,-,取負(fù),-,a,求,a,的負(fù)數(shù),C,語(yǔ)言的基本運(yùn)算,算術(shù)賦值運(yùn)算,運(yùn)算符,名稱(chēng),例子,等效于,加賦值,a+,b,a,a+,b,減賦值,a,-,b,a,a,b,*,乘賦值,a*,b,a,a*,b,/,除賦值,a/,b,a,a/b,%,取余賦值,a%,b,a,a%b,C,語(yǔ)言的基本運(yùn)算,位運(yùn)算,運(yùn)算符,名稱(chēng),例子,運(yùn)算功能,&,位與,a,&,b,a

4、,和,b,按位與,|,位或,a,|,b,a,和,b,位或,位反,a,a,按位取反,右移位,a,2,a,右移,2,位,左移位,a,4,0 x05,*,在計(jì)算機(jī)系統(tǒng)中常常采用移位運(yùn)算以快速實(shí)現(xiàn)乘法和除法的運(yùn)算,每左移,1,位等效于乘以,2,,每右移,1,位等效于除以,2,。,位運(yùn)算的應(yīng)用舉例(,1,),方法,1,:先右移,n,位,再與“,0 x01,”,bit=(byten),方法,2,:使用屏蔽字,unsigned char MASK8=,0 x01,0 x02,0 x04,0 x08,0 x10,0 x20,0 x40,0 x80;,bit=byte,0 0 0 0 1 1 1 0,1,思考:

5、如何從一個(gè)字節(jié),byte,中取出第,n,位?,void,byte_bit(int,*,bits,char,byte),int,i;,for(i,=0;ii),unsigned char,bit_byte(unsigned,int,*bits),unsigned char byte=0;,int,i;,for(i,=0;i8;i+),byte+=(,bitsi,i);,return byte;,void,byte_bit(int,*,bits,char,byte),int,i;,for(i,=0;ii),main(),char byte;,int,bit8=0;,printf(nplease,i

6、nput byten);,scanf(%c,&byte,);,byte_bit(bit,byte,);,printf(nbit,=%,d,%d,%d,%d,%d,%d,%d,%d,bit7,bit6,bit5,bit4,bit3,bit2,bit1,bit0);,C,語(yǔ)言的基本運(yùn)算,關(guān)系運(yùn)算,運(yùn)算符,名稱(chēng),例子,運(yùn)算功能,大于,a,b,a,大于,b,小于,a,=,大于等于,a,=,b,a,大于等于,b,=,小于等于,a,=,b,a,小于等于,b,!=,不等于,a,!=,b,a,不等于,b,C,語(yǔ)言的基本運(yùn)算,邏輯運(yùn)算,運(yùn)算符,名稱(chēng),例子,運(yùn)算功能,&,邏輯與,a,&,b,a,與,b,邏輯或,a

7、,b,a,或,b,!,邏輯反,!,a,a,反,C,語(yǔ)言的流程控制語(yǔ)句,選擇語(yǔ)句,if,(,表達(dá)式,),語(yǔ)句,1,else,語(yǔ)句,2,switch(,表達(dá)式),case,常量表達(dá)式,1:,語(yǔ)句,1,;,break;,case,常量表達(dá)式,2:,語(yǔ)句,2,;,break;,case,常量表達(dá)式,n,:,語(yǔ)句,n,;,break;,default:,語(yǔ)句,n+,1,;,學(xué)生成績(jī)分段:,90,100,為,A,,,80,89,為,B,,,60,79,為,C,,,0,59,為,D,,輸入學(xué)生成績(jī),然后分類(lèi)輸出。,include,Main(),int,x;,printf,(“,請(qǐng)輸入學(xué)生成績(jī),:/n”),;

8、,scanf(“%d”,&x,),switch(x/10),case 10:,printf(“x,=%d-,A”,x);,break,;,case 9:,printf(“x,=%d-,A”,x);,break,;,case 8:,printf(“x,=%d-,B”,x);,break,;,defaut,:,printf(“x,=%d number,error!”,x,);,C,語(yǔ)言的流程控制語(yǔ)句,循環(huán)語(yǔ)句,while,(,表達(dá)式,),循環(huán)體語(yǔ)句,do,語(yǔ)句,循環(huán)體語(yǔ)句,while,(,表達(dá)式,);,for(i=0;iN;i+),循環(huán)體語(yǔ)句,C,語(yǔ)言的流程控制語(yǔ)句,轉(zhuǎn)移語(yǔ)句,break;,con

9、tinue;,int,n;,for(n=10;n100;n+),if(n%3!=0)continue;,printf(“%5d”,n);,return;,goto,表達(dá)式,表達(dá)式,N,Y,Y,break,continue,N,N,Y,Y,N,break,語(yǔ)句退出循環(huán),continue,結(jié)束本次循環(huán),表達(dá)式,表達(dá)式,C,語(yǔ)言中幾個(gè)常用的函數(shù),標(biāo)準(zhǔn)輸入輸出:,scanf,(,“%d”,&n,);,printf,(“,Thiss,a test!n%d”,n,);,getchar,();,gets();,I/O,端口讀寫(xiě):,inport,b,(,BASEADDR+6,);,outport,b,(,BA

10、SEADDR+13,0 x05,);,cmd,操作,0,返回按鍵的鍵值,該值是,2,個(gè)字節(jié)的整型數(shù),若沒(méi)有鍵按下,則該函數(shù)一直等待,直到有鍵按下。當(dāng)按下時(shí),若返回值的低,8,位為非零,則表示為普通鍵,其值代表該鍵的,ASCII,碼。若返回值的低,8,位表示為擴(kuò)展的,ASCII,碼,表示按下的是特殊功能鍵。,1,此時(shí),該函數(shù)則用來(lái)查詢(xún)是否有鍵按下。若返回非,0,值,則表示有鍵按下,若為,0,,表示沒(méi)鍵按下。,2,此時(shí),該函數(shù)將返回一些控制鍵的狀態(tài),各鍵狀態(tài)由該函數(shù)返回的低,8,位的各位值來(lái)表示。,bioskey(int,cmd,),它在,Bios.h,頭文件中進(jìn)行了說(shuō)明,該函數(shù)實(shí)際上調(diào)用了,BI

11、OS,的,INT16H,中斷,參數(shù)用來(lái)確定,bioskey,(),如何操作,鍵盤(pán)控制,C,語(yǔ)言中幾個(gè)常用的函數(shù),(2),鍵盤(pán)輸入:,kbhit,(),bioskey,(0),/*,返回鍵盤(pán)輸入,*,/,while,(,!kbhit,(),/*,如果沒(méi)有按下任意鍵繼續(xù)*,/,延時(shí):,delay,(,millisecond,),延時(shí)若干毫秒,sleep,(,second,),延時(shí)若干秒,Turbo C 2.0,環(huán)境的使用,File:,管理文件和目錄,裝入或保存程序等,;,Edit:,進(jìn)入,Turbo C,的編輯程序,輸入和修改源程序,;,Run:,編譯、連接和運(yùn)行裝入,Turbo C,環(huán)境的當(dāng)前程

12、序;,Compile:,編譯和連接裝入,Turbo C,環(huán)境的當(dāng)前程序;,Project:,管理多文件工程;,Options:,設(shè)置,編譯程序和連接程序的各種選擇項(xiàng),;,Debug:,設(shè)置,各種調(diào)試選擇項(xiàng),;,Break/Watch:,設(shè)置,斷點(diǎn),在調(diào)試階段以便監(jiān)視所需的,變量,;,Turbo C 2.0,環(huán)境,(1),管理文件和目錄,裝入或保存程序等,進(jìn)入,Turbo C,的編輯程序,輸入和修改源程序,編譯、連接和運(yùn)行裝入,Turbo C,環(huán)境的當(dāng)前程序,編譯和連接裝入,Turbo C,環(huán)境的當(dāng)前程序,管理多文件工程,設(shè)置編譯程序和連接程序的各種選擇項(xiàng),設(shè)置各種調(diào)試選擇項(xiàng),設(shè)置斷點(diǎn),在調(diào)試階

13、段以便監(jiān)視所需的變量,Turbo C 2.0,環(huán)境設(shè)置,Turbo C 2.0,環(huán)境的使用,菜單欄,:,Alt+F F10,幾個(gè)常用的命令,打開(kāi):,F3,保存:,F2,編譯連接生成,EXE,:F9,;,運(yùn)行,:,Ctrl+F9(,用,AltF5,切換到用戶(hù)窗口,),調(diào)試:,單步:,F8,不可進(jìn)入函數(shù)體,單步,:,F7,可進(jìn)入被調(diào)函數(shù)體,斷點(diǎn),:,Ctrl+F8,觀察變量:,Ctrl+F7,全屏,窗口,模式切換,:,Alt+Enter,編輯程序,編寫(xiě)程序:記事本,之后在,TC,中打開(kāi)調(diào)試,變量申明,全局變量與局部變量(作用域),int,x;/*x,就是一個(gè)全局變量*/,main(),int,y;

14、/*y,就是一個(gè)局部變量*/,盡量少用全局變量,因?yàn)橄到y(tǒng)為其分配固定的永久存儲(chǔ)空間;而系統(tǒng)為局部變量分配動(dòng)態(tài)存儲(chǔ)空間。,模塊化編程,在主函數(shù)中的語(yǔ)句盡量的清晰明了,多用子函數(shù)來(lái)完成功能模塊;,void,DI(int,channel,int,*DI_in),.,模塊化編程(,1,),void,DO(int,channel,int,*DO_Out),.,模塊化編程(,2,),main(),int,DI_in6,DO_out6,i;,DI(0,DI_in);/*,獲得光電對(duì)管被擋情況,*/,DO(0,DO_out);/*,輸出,DO,*/,Int,I,/*,全局變量*,/,main(),int,DI

15、_in6,DO_out6,i;,/*,局部變量*,/,DataInput,(參數(shù)),ReadPort,(,參數(shù),),WritePort,(,參數(shù),),Control(,參數(shù),),DataOutput,(,參數(shù),),程序規(guī)范,(,例,),/*,屏幕輸入模塊*,/,/*I/O,端口輸入模塊*,/,/*I/O,端口輸出模塊*,/,/*,控制模塊*,/,/*,屏幕輸出模塊*,/,1.,變量:,全局變量與局部變量;,2.,子函數(shù):,屏幕輸入,/,輸出、,I/O,端口輸入輸出,控制模塊,3.,調(diào)式方法:,主程序開(kāi)始,子函數(shù)一個(gè)一個(gè)編,寫(xiě)調(diào)試,4.,程序注釋,程序規(guī)范,程序書(shū)寫(xiě)風(fēng)格,簡(jiǎn)潔、明了、易讀,縮進(jìn)編

16、寫(xiě),多寫(xiě)注釋(,TC,下注釋/*/,),調(diào)試程序:?jiǎn)尾綀?zhí)行,加,Watch,開(kāi)關(guān)量輸入程序及分析,即:,Inportb,(,port,)一直在執(zhí)行,While(!kbhit,(),inportb(port,);,數(shù)字量輸入采取一直讀取得策略,main(),int,i=0;,clrscr,();,while(,!bioskey(1),),i=i+1;,printf(%dn,i,);,return;,循環(huán)控制,DI,通道程序(移位取位),Num=14,0 0 0 0 1 1 1 0,0 0 0 0 0 0 0 1,0 0 0 0 0 0 0,0,DI_NUM0=,0,i=0,與,i=1,右移一位,0 0 0 0 0 1 1 1,0 0 0 0 0 0 0 1,0 0 0 0 0 0 0,1,DI_NUM1=,1,與,DI,通道程序,設(shè)置基地址,循環(huán),移位獲取位,int,BASE_ADDRESS=0 x220;,int,creat_DI(int,*DI_NUM,int,num),int,i=0;,for(i,=0;ii),return;,DI,通道程序,(,續(xù),),0 0 0 0 0 0 1

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

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶(hù)上傳的文檔直接被用戶(hù)下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!