《結構體》

《結構體》

本詞條是根據大學一年級計算機專業的課本《C語言程式設計教程》而編寫的,採用的是“問題解決教學”的教學設計方法。設計思路是“引入——提出問題——分析問題——寫出算法——編寫代碼——交流作業——評價”,教學過程是嚴格按照思路進行的。

【說明】:此教學設計任務由南京曉莊學院現代教育技術課程老師yqiong參與教師-維基星光計畫進行wiki教學而發布。此詞條為範例詞條,由伊昭榮選定主題並負責、參與現代教育技術課程的所有同學協作共同完成!

基本信息

科目:《C語言程式設計教程》教學對象:大學一年級(計算機系)
課時:2教學環境:計算機網路教室、教室

教學目標分析:

通過前面的學習,已經看到了使用數組這樣的構造數據類型可以將多個數據用一個名字命名,為存儲和處理數據帶來很大方便。但是,遭災各還存在著大量需要作為一個整體來處理的數據,而這些數據的類型又不盡相同。例如,要處理學籍數據,需要處理學生的學號(num)、姓名(name)、性別(sex)、年齡(age)、成績(score)和地址(addr)等數據。這樣一組相互關聯的數據如果用簡單變數存儲,則難以反映出它們的內在聯繫,而且使程式冗長晦澀而數組則無法容納不同類型的元素

學習內容分析:

本節課的教學內容是高等教育出版社,普通高等教育“十一五”國家級規劃教材必修模組——《C語言程式設計教程》中的第7章7.1節《結構體類型基礎》第1課時7.1.1《結構體類型及其定製》是在學習了C語言的基本數據類型、C語言程式的流程控制、模組化程式設計、數組及指針的基礎上,學習用戶定製數據類型——結構體類型基礎,其中包含“結構體類型及其定製、定義結構體類型變數及對變數的初始化、結構體變數的操作、嵌套結構體類型及位段”。

教學目標分析:

1、知識與技能:

掌握C語言結構體變數的定義、初始化、操作;能夠利用結構體變數將相互聯繫的不同類型的數據聯繫起來。並且用於程式當中;
掌握嵌套結構體類型、位段及其定義。

2、過程與方法:

能過實際生活中的實例引導學生經歷分析問題、構造結構體、編寫程式、調試程式等用計算機解決問題的過程,讓學生初步學會使用結構體讓不同類型的相互聯繫的數據構成一個整體

進一步掌握程式調試運行的方法,增強對C語言程式設計的功能的認識。

3、情感態度與價值觀:

程式設計選取的題目都是生活中遇到的例子,加強學生利用本學科解決日常生活中的問題的意識。
通過解決生活中的實際問題,體驗成功的快樂。

教學重點與難點

重點:

1.理解C語言結構體變數的定義、初始化、操作。
2.掌握嵌套結構體類型、位段及其定義。

難點:

在理解結構體的基礎上,如何利用計算機來解決生活中的實際問題。

教學策略的選擇與設計

本節課主要採用講授法,問題分析法自主探究學習方法,任務驅動法,強化練習法,交流討論法等。
從學生日常生活問題入手,快速自然的引導學生走進主題,明確本節課的學習目標,引發學生積極思考;講授新課內容,以醒目的方式將結構體的格式、功能、初始化和操作呈現給學生;以練習課後習題的方式,在上機實踐中完成任務;在結束環節,以課後作業強化練習法結束本節課,使學生對結構體的暫時記憶轉化為長期記憶。

教學過程與媒體資源

創設問題情境,激發學生學習興趣
教師活動:
教師提出一個如何存儲學生學籍信息的問題,誘導學生思考如何實現存儲。
學生活動:學生通過思考想辦法利用已學過的知識來尋找解決存儲學籍信息的方法。
設計意圖:用貼切學生的實例吸引學生注意力,讓學生想辦法解決,能引起學生學習興趣。
媒體資源:幻燈片,學生學籍信息。

新課探究—結構體的定義

教師活動:
(1)分析問題:要解決這個問題,用我們已經學過的C語言知識能解決嗎?因為有多種不同類型的數據,我們不能用數組來解決這個問題,那么我們可不可以自己定義一個數據類型來存儲呢?
(2)指導學生如何解決問題:
提問學生讓學生各言其說,並讓大家思考方法的可行性。
(3)引出新的知識:通過之前學生積極思考,引出結構體這個概念,並且如何利用它解決之前所提出的問題
(4)給出結構體的定義方法,及格式。
學生活動:
(1)學生分析問題,然後試著尋找解決問題的方法。
(2)通過提問學生,讓學生討論方法的可行性。
(3)學生仔細聽講,掌握結構體的定義、格式
(4)學生上機調試運行程式,體驗解決問題的快樂。
設計意圖:通過與學生分析問題,引導學生經歷分析問題,尋求解決方法、編寫程式,調試程式的過程中,讓學生體驗解決問題的快樂。
媒體資源:幻燈,黑板,粉筆,計算機

新課探究—嵌套結構體類型、位段

教師活動:
(1)引導學生通過探究學習嵌套結構體類型、位段。
(2)結合剛才的例子,引導學生理解結構體體的功能。
(3)布置學生自學位段:
int占四位元組的空間,char占一個位元組的空間,那么有一個int類型和一個char類型的結構體占幾個位元組的空間呢?
檢查學習情況:上機測試
通過上機讓學生利用結構體實現對學籍信息的存儲情況。
與學生分析測試,加深理解。
學生活動:
(1)學生自行探究,了解位段。
(2)學生在教師引導下理解嵌套結構體類型。
(3)學生自學位段,然後回答問題。
設計意圖:
(1)通過探究,培養學生的自學習慣,提高學生自主探究的能力
(2)將結構體放在例題中進行講解,讓學生更容易理解嵌套結構體。
(3)小測試的目的是為了加深學生對位段的理解
(4)通過上機練習,加深學生對結構體的理解,提高學生以知識解決問題的能力。
媒體資源:幻燈,黑板,粉筆,計算機

拓展學習:

教師活動:
(1)布置自學:通過引導讓學生自學位段這個概念。
(2)檢查學生自學情況
(3)請同學回答問題,檢查學習效果。
(4)小結該小組學習效果。
學生活動:
(1)學生以討論形式按分析問題。
(2)學生回答老師提出的小測試。
設計意圖:
(1)從結構體到嵌套結構體,問題深,引起學生探索的興趣。
(2)通過循序漸進的方式,讓學生在已有科研部範圍內學習新知識,培養學生的自主學習能力。

存疑設懸念

教師活動:一個結構體只能存放一個對像的一組數據。如果在存放一個班的學生的數據,就要設30個變數,很不方便,要如何解決這個問題?讓學生課後思考,下節課提問。
設計意圖:留一個懸念給學生,能激發學生的求知慾,為下節課創造學習條件。

小結

教師活動:小結本課時所學的內容:C語言的結構體,格式和功能。
學生活動:學生與教師一起小結本課時內容。
設計意圖:通過小結對本課時個總結,進一步鞏固本課時內容。

課後拓展:

師生活動:布置課外閱讀,有興趣的同學可以到網上收集學習資源,並與大家分享學習成果。
設計意圖:提示學生充分利用網路資源,並且學會與同學分享的良好習慣。

教學評價 :

1、學生自評表:
知識評價:
我知道了結構體的形式。□
我掌握了用結構體解決簡單問題的方法。□
我能用結構體編寫出解決有關問題的程式並用C語言實現算法。□
學生課堂表現評價
認真、積極、自信、善於與人合作、思維的條理性、思維的創造性
□□□□□□
能力評價:
和自己比,這節課我能拿個“”(A、B、C、D)。
2、教師評價:
課堂表現評價:
評價我的學生A(優秀)B(良好)C(合格)選答
學生對結構體形式的理解表達清晰能基本描述不能描述
學生練習的完成情況全部能完成大部分能完成少部分完成
學生對討論交流的態度非常投入較積極應付式
學生們小組合作情況分工明確,合作有效有合作,但分
工不盡合理
分工合作不合理
知識內容掌握程度評價:
(1)編寫一個程式,可輸入學生學籍信息。
(2)某學生有如下信息:姓名:張三、性別:男、年齡:20用程式實現對這三個信息的輸入與操作。
③編寫一個程式,可對學生學籍信息進行操作。
(3)彈性作業:供學有餘力的同學課後研究。
設計一個程式,實現對學生學籍信息的操作。

備註與反思

本課時從上機實踐及評分出發,通過講授法、自主探究、上機練習法等,讓學生經歷分析問題,構造結構體,編寫程式,調試運行的過程,學習結構體的基本格式和運用。設定的問題簡單,能幫助學生克服胃難情緒論,又從最貼進學生的成績入手,提高學生的學習興趣。
在教學的實施過程中要注重個體差異,學生程式不一,接收能力也會不一,對學生的評價要求就不能一樣。當個別學生因能力問題不能及時完成學習任務時,也要根據學生的進度給予適當的肯定,以增加學生的自信。

定義方法:

定義結構體,定義結構變數。例如:
structDATE{
intyear;//年
intmonth;//月
intday;//日
};
structstudent{
longintnumber;//學號
charname[8];//姓名
intage;//年齡
char*sex;//性別
structDATEbirthday;//出生日期結構體嵌套定義
};
structstudentstu1,stu2;//定義結構體變數
說明了兩個變數stu1和stu2為student結構類型。

結構體比喻結構體比喻

教學流程圖:

流程圖1流程圖1
流程圖2流程圖2

相關詞條

熱門詞條

聯絡我們