課程簡介:本課程是嵌入式linux開發(fā)的基礎(chǔ)課程,從C語言程序設(shè)計(jì)開始,,主要介紹Linux平臺下C語言及其編程環(huán)境的介紹,,C語言編譯器、調(diào)試工具和自動維護(hù)工具的使用方法,,Linux系統(tǒng)提供的特有函數(shù)調(diào)用,,在C程序中訪問文件的方法,進(jìn)程的概念,、進(jìn)程間通信及多進(jìn)程同步運(yùn)行的實(shí)現(xiàn)手段……是一門專門針對于嵌入式Linux系統(tǒng)開發(fā)工程師體系課程的基礎(chǔ)課程,。
課程教學(xué)基本目標(biāo):
通過本課程的學(xué)習(xí),,學(xué)員應(yīng)達(dá)到下列目標(biāo):
1.掌握C語言基本語句,、語法,、數(shù)據(jù)類型、運(yùn)算符和表達(dá)式,,順序、選擇,、循環(huán)結(jié)構(gòu)程序設(shè)計(jì),,數(shù)組,、函數(shù),、指針,、文件、結(jié)構(gòu)體類型變量、結(jié)構(gòu)體數(shù)組等的使用,。
2.掌握自頂向下,、逐步求精的結(jié)構(gòu)化程序設(shè)計(jì)的基本思想和方法;
3.掌握常用的算法,,包括迭代,、遞歸、計(jì)算最大最小值,、排序,、查找;
4.了解動態(tài)內(nèi)存分配和動態(tài)數(shù)據(jù)結(jié)構(gòu)的概念和應(yīng)用;
5.能夠使用C語言進(jìn)行應(yīng)用程序設(shè)計(jì),。
適用對象:
特別適用于C語言初學(xué)者,,學(xué)完之后希望你能盡快的編寫C代碼.同樣適用于嵌入式開發(fā)入門者。
課程大綱:
序號 | 主要內(nèi)容 | 學(xué)時(shí) | 教學(xué)學(xué)時(shí)分配 | 實(shí)踐項(xiàng)目 |
理論 | 實(shí)踐 |
1 | C語言的數(shù)據(jù)類型、運(yùn)算符與表達(dá)式,,順序程序設(shè)計(jì) | 4 | 2 | 2 | (一)學(xué)生成績排名 先采用冒泡法,,將學(xué)生成績從高到低進(jìn)行排序,,再輸入一個(gè)學(xué)生的成績,,將此成績按照排序規(guī)律插入已排好序的學(xué)生成績數(shù)組,,最后將排好序的成績單進(jìn)行反序存放 |
2 | 選擇結(jié)構(gòu)程序設(shè)計(jì) | 6 | 2 | 4 |
3 | 循環(huán)結(jié)構(gòu)程序設(shè)計(jì) | 8 | 3 | 5 |
4 | 一維數(shù)組的定義和引用,、二維數(shù)組的定義和引用 | 12 | 5 | 7 |
5 | 字符數(shù)組、字符串 | 6 | 2 | 4 |
6 | 函數(shù)的定義,、函數(shù)的調(diào)用,、函數(shù)的嵌套調(diào)用 | 8 | 4 | 6 | (二)根據(jù)條件進(jìn)行學(xué)生成績排名 在函數(shù)中進(jìn)行10個(gè)學(xué)生成績從高到低排名,再改進(jìn)函數(shù),,進(jìn)行n個(gè)學(xué)生成績從高到低排名,排名方式根據(jù)函數(shù)的style參數(shù)進(jìn)行,如style為‘a(chǎn)'按升序排,,style為'd'按降序排,。 (a:ascending升,d:descending降) |
7 | 函數(shù)的遞歸調(diào)用、局部變量和全局變量,、變量的存儲類別,內(nèi)部函數(shù)和外部函數(shù) | 6 | 3 | 3 |
8 | 指針的定義及運(yùn)算,,指針作函數(shù)參數(shù) | 8 | 1 | 7 | (三)用指針優(yōu)化學(xué)生成績排名 (1)用指針實(shí)現(xiàn)數(shù)組的輸入輸出以及數(shù)組的排序(在函數(shù)中進(jìn)行) (2)采用指針方法,輸入字符串“studentscore”,不使用strcpy()函數(shù),,自行編制函數(shù)實(shí)現(xiàn)復(fù)制該字符串并在第四步輸出排序后的成績單后下一行輸出該字符串 (3)相關(guān)實(shí)訓(xùn)題目:不使用C語言庫函數(shù)自行編制函數(shù)實(shí)現(xiàn)字符串的復(fù)制,、連接、轉(zhuǎn)換為大寫,、小寫,、字符串比較功能 |
9 | 指針與數(shù)組 | 6 | 2 | 4 |
10 | 字符指針與字符串 | 6 | 2 | 4 |
11 | 結(jié)構(gòu)體變量的定義、引用 | 4 | 2 | 2 | (四)學(xué)生成績單制作 定義一個(gè)結(jié)構(gòu)體數(shù)組,,存放10個(gè)學(xué)生的學(xué)號,,姓名,三門課的成績,,輸出單門課成績最高的學(xué)生的學(xué)號,、姓名、以及該門課程的成績,,輸出三門課程的平均分?jǐn)?shù)最高的學(xué)生的學(xué)號,、姓名及其平均分,再將10個(gè)學(xué)生按照平均分?jǐn)?shù)從高到低進(jìn)行排序,,輸出結(jié)果 |
12 | 結(jié)構(gòu)體數(shù)組 | 6 | 2 | 4 |
13 | 鏈表 | 4 | 2 | 2 |
14 | 共用體,、枚舉類型 | 2 | 1 | 1 |
15 | 位運(yùn)算 | 4 | 2 | 2 | 測試鍵盤掃描碼 |
16 | 文件的操作 | 8 | 3 | 5 | (五)學(xué)生成績文件管理 (1)將10個(gè)學(xué)生的相關(guān)數(shù)據(jù),存入文件中,,再從文件中讀出按照平均分?jǐn)?shù)從高到低進(jìn)行排序,,分別將結(jié)果輸出到屏幕上和另一文件中,再從文件中讀取第2,,4,,6,8,,10個(gè)學(xué)生的數(shù)據(jù),。 (2)相關(guān)實(shí)訓(xùn)題目:分別將一個(gè)字符串、整型數(shù)組,、實(shí)型數(shù)組分別寫入不同文件中,,再從文件中取出進(jìn)行排序,將排序后的數(shù)據(jù)分別存入另一個(gè)文件,然后從文件中取出數(shù)據(jù)輸出到屏幕上查看排序是否正確實(shí)現(xiàn) |
17 | 文件的定位操作 | 4 | 2 | 2 |
18 | 圖形用戶界面技術(shù) | 4 | 1 | 3 | 制作一個(gè)運(yùn)轉(zhuǎn)的時(shí)鐘 |