c语言cythe头文件,第5章 C语言序的基本结构.doc
第5章 C語言序的基本結構
第5章 C語言程序的基本結構
C語言程序是由若干個函數單元組成的,每個函數都是完成某個特殊任務的子程序段。組成一個程序的若干個函數可以保存在一個源程序文件中,也可以保存在幾個源程序文件中,最后再將它們連接在一起。C語言程序的擴展名為“.c” ,如“test.c” 等。為了使初學者能徹底弄明白,我們通過實例進行引導,由淺入深。
5.1 用函數調用方式完成LED1~LED8這8個二極管實現D0、D2、D4、D6及D1、D3、D5、D7的交替點亮的實驗,周期約1秒
5.1.1 源程序文件
在D盤建立一個文件目錄(CS5-1),然后建立CS5-1.uv2的工程項目,最后建立源程序文件(CS5-1.c)。輸入下面的程序:
#include //1
/*=====================2================*/
void delay(void)//3
{//4
unsigned int i,j;//5
for(i=0;i<500;i++)//6
{//7
for(j=0;j<121;j++)//8
{;}//9
}//10
}//11
//=====================12============
void light1(void)//13
{//14
P1=0xaa;//15
}//16
//=====================17============
void light2(void)//18
{//19
P1=0x55;//20
}//21
/*=====================22============*/
void main(void)//23
{//24
while(1)//25
{//26
light1();//27
delay();//28
light2();//29
delay();//30
}//31
}//32
編譯通過后,試驗板接通5V穩壓電源,將生成的CS5-1.hex文件下載到51 MCU DEMO試驗板上的單片機89S51中,注意,標示“LED”的雙排針應插上8個短路塊。我們看到D0~D7這8個二極管中的D0、D2、D4、D6及D1、D3、D5、D7的交替點亮,周期差不多為1S。圖5-1為keil C51軟件進行仿真時的界面。
圖5-1 keil c51軟件進行仿真時的界面
5.1.2 程序分析解釋
序號1:包含頭文件REG51.H。
序號2:程序分隔或注釋,在“/*”及“*/”之間的內容,程序不會去處理,因此通??蛇M行文字注釋,能增加程序的可讀性,當然也可作為程序語句模塊之間的分隔。
序號3:定義函數名為delay的延時子函數。
序號4:delay延時子函數開始。
序號5:定義兩個無符號整形變量i,j。
序號6~10:兩個for語句循環體,作用是延時,由于我們還未學習for語句,因此這里可暫不理會。
序號11:delay的延時子函數結束。
序號12:程序分隔或注釋,在“//”之后的內容,程序也不會去處理,因此也可進行文字注釋,能增加程序的可讀性,當然也能作為程序模塊之間的分隔。但應注意,這種風格的注釋,只對本行有效,所以在只需要一行注釋的時候,往往采用“//……”這種格式。而“/*……*/”風格的注釋,既可用于一行,也可用于多行。
序號13:定義函數名為light1 的子函數,該子函數用于點亮D0、D2、D4、D6四個LED。
序號14:light1 子函數開始。
序號15:向P1口送數0xaa(0xaa為16進制數,相當于匯編語言中的AAH,前綴加0x為C51的風格),這條語句的目的是點亮D0、D2、D4、D6四個LED。
序號16:light1 子函數結束。
序號17:程序分隔。
序號18:定義函數名為light2 的子函數,該子函數用于點亮D1、D3、D5、D7四個LED。
序號19:light2子函數開始。
序號20:向P1口送數0x55,目的是點亮D1、D3、D5、D7四個LED。
序號21:light2子函數結束。
序號22:程序分隔。
序號23:定義函數名為main的主函數。
序號24:main的主函數開始。
序號25:while循環語句,這里進行無限循環。
序號26:while循環語句開始。
序號27:調用light1子函數模塊。
序號28:調用延時子函數模塊。
序號29:調用light2子函數模塊。
序號3
總結
以上是生活随笔為你收集整理的c语言cythe头文件,第5章 C语言序的基本结构.doc的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 空调拆装多少钱啊?
- 下一篇: c语言n1=(n2=(n3=0)),计算