在日常的學習、工作、生活中,肯定對各類范文都很熟悉吧。那么我們該如何寫一篇較為完美的范文呢?接下來小編就給大家介紹一下優(yōu)秀的范文該怎么寫,我們一起來看一看吧。
《制作通訊錄》說課稿 編寫通訊稿篇一
教學目標:
1、知識目標:了解表格的基本構成和表格制作的幾種方法;
2、技能目標:掌握通過菜單方式制作基本的二維表格,培養(yǎng)學生的動手操作能力;
3、情感目標:通過對名片信息的分析培養(yǎng)學生的信息搜集和整理能力。教學重點:
1、認識表格的行、列和單元格;
2、規(guī)則的二維表格的插入; 教學難點:
表格中文本格式的設置。教學過程:
一、創(chuàng)設情景
師:今天上課老師想請問一下大家有沒有看到過通訊錄???
生:沒有(如果有就請學生介紹一下通訊錄)
師:對,通訊錄一般就是你所要聯(lián)系的人的一些通訊方式,同學們見過名片沒有,請大家分析一下,這樣一張通訊錄跟名片相比有什么好處嗎?
生:可以更方便的找到信息。
師:說得很好,因為通訊錄中使用了表格,而在我們?nèi)粘I钪惺褂帽砀窨梢愿雍啙崱⑶宄谋硎鱿嚓P內(nèi)容。
師:那么今天這節(jié)課我們就通過word中的表格功能和上節(jié)課制作的名片為自己來制作一份小小通訊錄。(板書:制作好友通訊錄)
二、自主探究
師:老師再問一下,在日常生活中你看到過什么表格?
生:課程表、值日表、成績表…….師:那么你知道一張表格有哪些元素組成嗎?或者表格中各相關部分的名稱。
生:不知道
師:出示一張表格,并為大家介紹表格中各相關部分的名稱。
/ 4
生:觀看圖片中表格組成部分。
師:同學們請想一想,既然是通訊錄,那么必須要有哪幾項內(nèi)容?
生:都有姓名、地址、電話等
師:那么我們這些共同的信息應如何對應到表格中相應的單元格呢
生:回答(如果回答不出教師可以提示一下)
師:一般情況下我們把這些共同的信息都是填寫在第一行作為列標題,從第二行開始應該是具體信息,有多少共同信息就應該有幾列,而你的通訊錄中要有多少朋友就可以添加幾行(一邊講解一邊在黑板上演示)
師:現(xiàn)在我們已經(jīng)在黑板上畫好了一張通訊錄了,我看有的同學等不及要自己動手操作了,不要急,老師已經(jīng)在大家的桌面上放了一個幫助文件,里面詳細介紹了表格制作的步驟,請大家打開word,根據(jù)幫助文件,趕快動手做自己的通訊錄吧。
生:打開幫助文件,動手制作表格
師:巡回指導
三、充實內(nèi)容
師:剛才我看到有許多同學已經(jīng)根據(jù)幫助文件制作出了通訊錄所需的表格了,下面我們請一位同學上來演示一下他是怎么操作的生:上臺演示(一邊操作一邊講解)
師:這位同學做得非常棒,我們應該鼓勵一下。不過老師還要告訴你,其實制作表格的方法除了剛才那位同學使用的方法外還有另外的方法,想不想知道啊?你可以在幫助文件中去找找看,找到后也可以試一試。
生:沒完成的同學繼續(xù)完成,做好的同學試著用另外的方法建立一個表格。
師:繼續(xù)輔導學生。
師:經(jīng)過檢查我發(fā)現(xiàn)基本上同學的通訊錄的基本框架(表格)已經(jīng)搭好了,那么接下去應該干什么事呢?
生:輸入文字
師:對了,現(xiàn)在應該為通訊錄填充內(nèi)容了。(怎么輸入文字可以看幫助文件)
師:趕快動手吧,看誰在最短的時間內(nèi)做的又快又漂亮。
生:在表格中輸入文字
/ 4
師:巡回指導
師:大家請停一下,剛才老師在看大家操作的同時又發(fā)現(xiàn)一個問題:就是大家在表格的單元格中輸入內(nèi)容時,有的單元格太大,(文字較少時)而有的單元格又太?。ㄈ缭谳斎氲刂窌r),所以導致很多的同學的通訊錄看上去不太整齊,能不能想辦法呢?老師教你一招:只要你在表格中單擊鼠標右鍵-----自動調(diào)整-----調(diào)整表格,這樣單元格就能根據(jù)內(nèi)容自動調(diào)整了。快試試吧!
生:繼續(xù)操作
師:大家可以再停一下,老師剛才發(fā)現(xiàn)一個同學輸入文字的方法很快,我們來看看他是怎樣輸入的
生:演示把名片中的信息通過復制、粘貼的方法移到表格中
師:這位同學真是有辦法,說明他是一個愛動腦筋的人,大家在平常的學習中也應該學會這種方法。
生:繼續(xù)操作
四、精益求精,美化表格
師:我看有的同學的通訊錄中已經(jīng)有很多朋友的名單了,但是你覺得你的通訊錄還缺少了些什么嗎?
生:名字
生:最好可以給表格添加顏色
師:同學們想得非常周到仔細,要是我們能給通訊錄添上背景那這個通訊錄就更加漂亮了(展示范例),怎么添加呢,大家到幫助文件中去尋找吧,等一下我們來比一下誰的通訊錄的最漂亮了。
生:自主嘗試表格中文本格式的設置
師:給予學生適當?shù)奶崾荆ń處熀唵窝菔荆?/p>
五、展示作品,評價交流
師:我看很多同學都做好自己的通訊錄,而且有的同學已經(jīng)等不及想把自己的作品給其它同學欣賞了,好,接下來我們來欣賞幾位同學的作品
生:欣賞同學的作品
師:你覺得這位同學的作品怎么樣
生:評價同學的作品
/ 4
六、小結
師:馬上要下課了,我們再來回憶一下這節(jié)課你學會了什么
生:怎樣在word中插入一個表格
師:對,這節(jié)課我們通過制作小小通訊錄學會了在word中怎樣插入一個表格,其實在我們?nèi)粘I钪谐送ㄓ嶄洠€有很多表格,象我們一開始提到過的課程表等等,希望同學們回去后再去制作一張表格,比如說常用電話表,做好后你可以用電子郵件發(fā)給我。師:下課。
/ 4
《制作通訊錄》說課稿 編寫通訊稿篇二
四上第9課《制作通訊錄》說課稿
王店鎮(zhèn)中心小學 錢嘉佳
一、教材分析
本課是四上第二單元的最后一課,是利用網(wǎng)絡學習的平臺的一個應用實例。通過網(wǎng)絡獲取信息,制作通訊錄來解決生活中的實際問題。表格是生活中一種常見的高效的信息表達方式,通過制作通訊錄,讓學生認識表格,了解表格,學會表格的制作及編輯方法,為word學習進一步打下基礎,也能幫助解決今后在學習生活中的一些實際問題。
二、學情分析
四年級的學生總體來說比較活潑好動,對事物的認知還比較形象,對新鮮事物興趣濃厚。通過上一單元的學習,學生已經(jīng)掌握了一定的word操作技能,本課的表格制作是word中的一個新知識,學生對新知識的學習還缺乏一定的自主探究能力,對教師的依賴性較強。
三、教學目標
1、知識目標
(1)了解表格的基本構成,知道表格的作用。(2)了解利用網(wǎng)絡獲取信息的多樣性。(3)了解制作表格的一般過程。
2、技能目標
(1)掌握在word中插入表格的方法。(2)掌握表格的編輯及美化方法。
3、情感目標
(1)培養(yǎng)學生的信息搜集與整理的能力。(2)能利用表格制作方便我們的生活。
四、教學重難點
1、教學重點:表格的插入與編輯
2、教學難點:表格的行列增減,布局美化。
五、教法設計
1、情境導入法:通過生活中應用到通訊錄的實際例子,引入到教學內(nèi)容中,更能激發(fā)學生的學習熱情,為下一步學習做好準備。
2、任務驅動法:讓學生根據(jù)不同的任務去完成不同的操作步驟,制作表格中采用:插入表格——填寫表格——修改表格——美化表格。這樣步步遞進式的任務,有助于學生對自己的學習有明確的目地,同時也能顧及到所有學生,體現(xiàn)分層教學。
3、自主探究法:在學習插入表格的方法以及修改表格增減行列中,讓學生對照書本以及微視頻,能有效解決操作中的一些難點問題,比教師講授效果好,另一方面,也能培養(yǎng)學生的自主學習能力,改變有什么問題總是依賴老師解決的現(xiàn)狀。
4、問題導學法:在美化表格制作環(huán)節(jié),由于學生對自己表格的缺陷缺乏認識,通過對比標準的表格,讓學生去發(fā)現(xiàn)問題,通過分析,思考改進的方法,從而達到完善表格的目地。
六、課前準備
本課的學習任務,是建立在上一課制作名片的基礎上。課前要把上節(jié)課學生制作的名片,進行整理打印出來,同時還要準備一張已經(jīng)制作完成的班級通訊錄,課堂導入環(huán)節(jié)需展示出來。制作好調(diào)整表格的微視頻,為學生學習提供參照。為每位學生準備一張學習卡,上面有學習任務及作品評價,待制作表格和評價環(huán)節(jié)中使用。
七、教學設計
一、情境導入
上個星期我們班上有一名同學生病了沒來上學,老師想打個電話了解一下情況?,F(xiàn)在老師手里有一疊班級同學名片和一張通訊錄,你會選擇哪種方法去快速找到這名同學的家里電話呢,為什么?我們想不想也來做一張通訊錄?
設計意圖:把制作通訊錄的內(nèi)容,結合到生活實際的情境中,有助于激發(fā)學生的學習興趣,同時,也能讓學生了解到通訊錄所起到的作用。
二、了解信息獲取方法
你知道老師是怎么知道你們的信息的呢?(網(wǎng)絡學習的平臺),還有哪些方法也可以從網(wǎng)上收集信息。
設計意圖:由于本節(jié)課的重點是學習制作表格,所以,獲取信息的過程就不讓學生去體會了,讓學生說一說,了解一些網(wǎng)絡獲取信息的方法,把更多的時間放到制作表格中。
三、制作通訊錄
把收集到的信息分類整理,就能制作成一張通訊錄了。
1、認識表格(1)出示一張通訊錄,觀察通訊錄有哪些內(nèi)容組成。(2)觀察表格的特點,認識表格的行、列、單元格。(3)假如你要設計一張五人的通訊錄,需要幾行幾列。
設計意圖:認識表格的特征能為下一步制作表格做好鋪墊,以圖片實例,認識表格能更加直觀形象的起到加深印象的作用。
2、制作表格
任務一:選擇幾名同學的信息,根據(jù)需要插入表格(參考書本內(nèi)容,自學插入方法)
請先完成的同學上臺演示,教師總結步驟。任務二:填寫表格內(nèi)容
任務三:修改表格(做完表格后,我還想再一名同學的信息,或者我發(fā)現(xiàn)還少了電子郵箱這項該怎么辦)
提示:打開微視頻或參考書本教你一招,完成表格的修改 任務四:美化表格
演示幾張表格制作不美觀的作品,與一張標準通訊錄對比,發(fā)現(xiàn)什么問題,請同學說說(表格的列寬與文字不匹配,表格內(nèi)容沒有對齊等)
設計意圖:插入表格的學習,難度不大,采用任務驅動放手讓學生嘗試自學,培養(yǎng)學生和自主探究能力,同時,由于學生的個體差異性較大,在操作過程中沒有限定要插入的表格的行數(shù)和列數(shù),有助于對后進生學習起到激勵作用。表格的行列增減是本課的難點,因此利用微視頻學習,能使學生的學習效率提高。通過對比表格,讓學生明確表格制作需要一定的美化,特別是列寬要與文字內(nèi)容匹配。
3、展示表格
展示班級中的優(yōu)秀作品,學生互評,教師評價,并且完成學生手里的自評表(從完整度,內(nèi)容數(shù)量、美觀度三方面評價)
設計意圖:通過學生自評、互評、教師評價,讓學生能更好的了解表格制作的要求,也進一步培養(yǎng)學生的審美意識,欣賞能力。多元化的評價讓學生能全面認識作品的優(yōu)點及待改進的方面。同時也能更好得激勵學生,增強學生的學習興趣
四、總結回顧,知識拓展
1、通過這節(jié)課的學習,你學會些什么? 教師總結小詩: 表格制作查方便 插入表格按步走 分清行列是關鍵 布局調(diào)整需合理 美化文字更絢麗
2、在我們的生活中,表格應用非常廣泛,如班級值日生表、列車時刻表、作息時間表等,希望同學們學以致用。
設計意圖:通過總結回顧,梳理整節(jié)課的知識要點,把習得的知識進一步內(nèi)化。以小詩總結的方法,讀起來朗朗上口,也便于加強記憶。知識拓展有助于學生將書本知識與生活實際相結合,培養(yǎng)學以致用的情感,激發(fā)學生進一步探究學習的激情。
八、板書設計
制作通訊錄
認識表格:分清行、列、單元格
制作表格: 插入表格——填寫表格——修改表格——美化表格
《制作通訊錄》說課稿 編寫通訊稿篇三
浙江大學城市學院實驗報告
課程名稱
數(shù)據(jù)結構
實驗項目名稱
實驗三
線性表的應用---通訊錄管理系統(tǒng)的設計與實現(xiàn)
實驗成績
指導老師(簽名)
日期
一.實驗目的和要求
1、掌握線性表的順序存儲結構;
2、掌握線性表的動態(tài)分配順序存儲結構及基本操作的實現(xiàn);
3、掌握線性表的鏈式存儲結構;
4、掌握單鏈表的基本操作的實現(xiàn)。
5、掌握線性表的應用。
二.實驗內(nèi)容
1、設計并實現(xiàn)日常生活中通訊錄的管理系統(tǒng)。該系統(tǒng)需3位同學一組,按模塊分工協(xié)作完成,系統(tǒng)具體功能需求描述如下:
① 輸入數(shù)據(jù)建立通訊錄表:在系統(tǒng)使用前先需要創(chuàng)建通訊錄,可以一次輸入(或文件導入)多個成員的通訊錄信息,建立通訊錄。要求此表為順序存儲結構。② 查看所有通訊錄信息:顯示通訊錄表中所有成員的通訊錄信息。
③ 查詢通訊錄中滿足要求的信息:可以根據(jù)不同方式查詢,如按姓名查詢、按姓氏查詢、按編號查詢等。
④ 新增通訊錄信息:每次可添加一個新成員的通訊錄信息。⑤ 修改通訊錄信息:修改通訊錄中已有成員的信息。
⑥ 刪除通訊錄成員:刪除通訊錄表中已有的成員,但需要把刪除的成員信息放到另一張被刪成員表中,以便錯誤操作后允許恢復。該被刪成員表要求采用鏈式存儲。
⑦恢復被刪成員信息:一旦發(fā)現(xiàn)誤刪,則可以在被刪成員表中找到該成員,重新加入到通訊錄表中。
系統(tǒng)實現(xiàn)要求:
① 通訊錄表必須使用動態(tài)分配順序存儲結構,被刪成員表必須使用鏈式存儲結構。
②通訊錄信息至少包括:編號、姓名、電話
1、電話
2、郵箱、......等,其他可自行設置。
③用菜單方式選擇相應功能,且各功能的有關操作需通過調(diào)用各函數(shù)來實現(xiàn),如:初始化通訊錄表用函數(shù)void initaddressbook(sqlist &txl)、瀏覽所有通訊錄成員函數(shù) browseaddressbook(sqlist tsl)等等,這些操作因針對通訊錄原始表,屬于順序結構,故可將這些子函數(shù)放在頭文件test3_seq.h中。針對被刪成員表的操作,由于是鏈式存儲結構,故針對此表的相關操作課定義在test3_link.h中。
③ 建立主函數(shù)文件,通過調(diào)用上述頭文件中的函數(shù)來實現(xiàn)該系統(tǒng)。④ 給出系統(tǒng)數(shù)據(jù)類型的定義、存儲結構定義以及各個函數(shù)之間的調(diào)用關系。⑤ 實驗內(nèi)容中設置的功能要求必須實現(xiàn),此外可自行增加合適的功能,可作為額外的實驗成績進行加分: 例如:
? 通訊錄和被刪成員數(shù)據(jù)可用文件保存,程序運行時可從文件讀入相應數(shù)據(jù),程序結束時可寫入文件保存。
? 通訊錄分組,可自行考慮把通訊錄成員進行分組,如同學組、親戚組、同事組等。
2、以小組為單位認真填寫實驗報告,實驗報告必須包括各類數(shù)據(jù)類型的結構定義說明,各類數(shù)據(jù)的組織方式,系統(tǒng)的功能結構,各個操作的定義以及實現(xiàn)方法,運行結果與分析,難點如何解決,存在問題以及可改進之處等。同時,在實驗報告中需寫明小組每位同學的分工,得分(小組總分不超過12分)等。。每組還必須制作一個答辯ppt,該ppt的命名為ppt_通訊錄管理系統(tǒng)_(各小組成員名字).ppt。
3、、源程序文件及test3_seq.h、test3_link.h,以及答辯ppt壓縮打包后到bb平臺上。
難點與解決:
1.實參形參的傳遞,鏈表中指針的指向,通過看書多調(diào)試幾次就能解決
2.在程序執(zhí)行switch語句時,輸入一個數(shù)后,執(zhí)行后,程序直接退出。switch語句的輸入項,非法,導致的程序直接退出。解決的方法,可用while語句先限制流入switch語句的非法輸入項,從而解決輸入項非法的問題。其他輸入數(shù)字選擇時,亦可用此方法解決
問題:
1.無法在機房的電腦運行
、.h、.dev以外的文件全部刪除才行,否則即使故意打錯幾行代碼也能成功編譯,刪除后編譯出現(xiàn)
[warning] non-static data member initializers only available with-std=c++11 or-std=gnu++11 [enabled by default] 文件的讀取寫入,參考了網(wǎng)上的和上課講的,一次是進行動態(tài)內(nèi)存分配的語句無法編譯,一次是找不到文件,最后決定不做這個功能了。改進
1.增加讀取保存功能,增加查詢方式如按電話查找 2.編號是根據(jù)當前長度自動編號,雖然可以直接反應記錄的數(shù)量使得編寫程序時比較方便,但也使得無法每個人對應一個編號,也使得按編號查找如同擺設
功能模塊結構圖:
函數(shù)調(diào)用結構圖:
運行結果與分析:
程序運行后得到開始菜單,結果如下圖所示
開始菜單中包括創(chuàng)建通訊錄、顯示所有記錄、查詢記錄、添加記錄,返回本菜單以及推出程序,人們可以輸入想要選擇的模塊進行程序的進一步運行。輸入1,創(chuàng)建通訊錄,結果下圖所示:
輸入2,顯示所有記錄,結果下圖所示:
輸入3,查詢記錄,結果下圖所示:
兩種查找方式;
輸入4,增添記錄,結果如下圖所示:
輸入5,修改記錄,結果如下圖所示:
兩種方式,先查找再修改
輸入6,刪除記錄,結果如下圖所示:
兩種方式,先查找再刪除 輸入7進入恢復菜單,結果如下圖所示:
選擇恢復方式
程序清單
#include
#include
#include
#define true 1 #define false 0 #define ok 1 #define error 0
#define infeasible-1 #define overflow-2 struct txl { int num;//編號char name[10];//姓名
char tel1[100];//電話1
char tel2[100];//電話2
char mail[100];//電子郵箱
char add[100];//家庭地址
};struct lnode { struct txl data;struct lnode *next;};
struct sqlist {
int length;//當前長度
int listsize=100;//當前分配的存儲,初始為100單位:sizeof(struct txl)
struct txl *elem;//存儲空間基址
};typedef int status;#include“menu.h” #include“test3_seq.h” #include“test3_link.h” int main(){ int n,k=0,j;file *fp;//定義文件指針
struct sqlist l;//定義全局變量l為結構體sqlist
struct txl n1,*n2;struct lnode *head;//頭指針
head=(struct lnode*)malloc(sizeof(struct lnode));head->next=null;menu();
while(scanf(“%d”,&n),n)//限制輸入,當輸入為int型,且不為0時循環(huán)
} {
switch(n){ case 1: create(l,fp);k=1;break;//k=1表示已創(chuàng)建通訊錄
case 2: if(k==1)listtraverse(l);break;case 3: if(k==1)search(l,n1);break;case 4: if(k==1)insert(l);break;case 5: if(k==1)modify(l);break;case 6: if(k==1)delete(l,head);break;case 7: recover(l,head);break;case 8: menu();break;
default:printf(“請輸入0-8!n”);} if(k==0&&n>=2&&n<=6)printf(“請先創(chuàng)建通訊錄!n請重新輸入!n”);} return 0;menu.h void menu(){
//菜單函數(shù)
printf(“n”);printf(“ttt**************************n”);printf(“ttt*
歡迎使用
*n”);printf(“ttt*
通訊錄管理系統(tǒng)
*n”);printf(“ttt**************************n”);printf(“n”);printf(“tt *************************************n”);printf(“tt *
1.創(chuàng)建通訊錄
*n”);printf(“tt *
2.顯示所有記錄
*n”);printf(“tt *
3.查詢記錄
*n”);printf(“tt *
4.添加記錄
*n”);printf(“tt *
5.修改記錄
*n”);printf(“tt *
6.刪除記錄
*n”);printf(“tt *
7.恢復記錄
*n”);printf(“tt *
8.顯示菜單
*n”);printf(“tt *
0.退出程序
*n”);printf(“tt *************************************nnn”);
} void menu_1(){
//菜單函數(shù)
printf(“n”);printf(“ttt**************************n”);printf(“ttt*
歡迎使用
*n”);printf(“ttt*
通訊錄恢復系統(tǒng)
*n”);printf(“ttt**************************n”);printf(“n”);printf(“tt *************************************n”);printf(“tt *
1.按編號恢復
*n”);printf(“tt *
2.按姓名恢復
*n”);printf(“tt *
0.退出恢復系統(tǒng)
*n”);printf(“tt *************************************nnn”);
}
test3_seq.h int create(struct sqlist &l,file * &fp)//創(chuàng)建通訊錄
{ system(“cls”);//清屏
int i,n,s=0;char k;
printf(“你所想創(chuàng)建通訊錄個數(shù)(<=100):”);scanf(“%d”,&);
=(struct txl*)malloc(ze*sizeof(struct txl));//存儲分配
if(!)//分配失敗
{
exit(overflow);
}
for(i=0;i
[i].num=i+1;
printf(“編號為%d”,[i].num);//第i條記錄的編號為i
printf(“請輸入姓名:”);
scanf(“%s”,[i].name);
printf(“請輸入電話1:”);
scanf(“%s”,[i].tel1);
printf(“請輸入電話2:”);
scanf(“%s”,[i].tel2);
printf(“請輸入電子郵箱:”);
scanf(“%s”,[i].mail);
printf(“請輸入家庭地址:”);
scanf(“%s”,[i].add);
}
printf(“輸入 0:退出, 輸入8:返回菜單
請輸入您的選擇: ”);
} int listtraverse(struct sqlist &l){//顯示所有信息
system(“cls”);//清屏
int i;for(i=0;i
printf(“編號:%d ”,[i].num);
printf(“姓名:%s ”,[i].name);
printf(“電話1:%s ”,[i].tel1);
printf(“電話2: %s ”,[i].tel2);
printf(“電子郵箱: %s ”,[i].mail);
printf(“家庭地址: %sn”,[i].add);
} printf(“輸入 0:退出, 輸入8:返回菜單
請輸入您的選擇: ”);} int search(struct sqlist &l,struct txl &n){//查找信息
system(“cls”);//清屏
int i,n1,j=0,k=0;char name1[10];//查找的姓名
int num1;//查找的編號
printf(“輸入1按姓名查找
”);printf(“輸入2按編號查找 ”);while(scanf(“%d”,&n1)){
if(n1==1)
{
printf(“請輸入您要查找的姓名:”);
scanf(“%s”,name1);
for(i=0;i
{
if(strcmp(name1,[i].name)==0)//姓名相同時
{
n=[i];
printf(“編號:%d ”,[i].num);
printf(“名字:%s ”,[i].name);
printf(“電話1:%s ”,[i].tel1);
printf(“電話2: %s ”,[i].tel2);
printf(“電子郵箱: %s ”,[i].mail);
printf(“家庭地址: %sn”,[i].add);
k=1;
break;
}
}
if(k==0)//沒有該姓名時
{
printf(“沒有這個記錄n”);
}
break;
}
if(n1==2)
{
printf(“請輸入你要查找的編號: ”);
while(scanf(“%d”,&num1),num1){//限制輸入
break;
}
if(num1<1||num1>=)//沒有該編號時
{
printf(“沒有這個記錄n”);
}
for(i=0;i
{
if(num1==[i].num)//編號相同時
{
n=[i];
printf(“編號:%d ”,[i].num);
printf(“名字:%s ”,[i].name);
printf(“電話1:%s ”,[i].tel1);
printf(“電話2: %s ”,[i].tel2);
printf(“電子郵箱: %s ”,[i].mail);
printf(“家庭地址: %sn”,[i].add);
break;
}
}
break;
}
if(n1!=1&&n1!=2)
printf(“請輸入1或2!”);
} printf(“輸入 0:退出, 輸入8:返回菜單
請輸入您的選擇: ”);} int search_1(struct sqlist &l,struct txl &n){//被其他函數(shù)調(diào)用以查找信息
int i,n1,j=0,k=0;char name1[10];//查找的姓名
int num1;//查找的編號
printf(“輸入1按姓名查找
”);printf(“輸入2按編號查找 ”);while(scanf(“%d”,&n1)){ if(n1==1){
printf(“請輸入您要查找的姓名:”);
scanf(“%s”,name1);
for(i=0;i
{
if(strcmp(name1,[i].name)==0)//姓名相同時
{
n=[i];
printf(“編號:%d ”,[i].num);
printf(“名字:%s ”,[i].name);
printf(“電話1:%s ”,[i].tel1);
printf(“電話2: %s ”,[i].tel2);
printf(“電子郵箱: %s ”,[i].mail);
printf(“家庭地址: %sn”,[i].add);
k=1;
break;
}
}
if(k==0)//沒有該姓名時
{
printf(“沒有這個記錄n”);
}
break;
} if(n1==2){
printf(“請輸入你要查找的編號: ”);
while(scanf(“%d”,&num1),num1){//限制輸入
break;
}
if(num1<1||num1>=)//沒有該編號時
{
printf(“沒有這個記錄n”);
}
for(i=0;i
{
if(num1==[i].num)//編號相同時
{
n=[i];
printf(“編號:%d ”,[i].num);
printf(“名字:%s ”,[i].name);
printf(“電話1:%s ”,[i].tel1);
printf(“電話2: %s ”,[i].tel2);
printf(“電子郵箱: %s ”,[i].mail);
printf(“家庭地址: %sn”,[i].add);
break;
}
}
break;
}
if(n1!=1&&n1!=2)
printf(“請輸入1或2!”);
} } int insert(struct sqlist &l){//添加信息
system(“cls”);int i;char k;struct txl *newbase;if(>=ze)////當前存儲空間已滿,增加分配
{
newbase=(struct txl*)realloc(,(ze+10)*sizeof(struct txl));
if(!newbase)//存儲分配失敗
{
exit(overflow);
}
=newbase;} printf(“請輸入新成員的信息:”);printf(“這是第%d位”,+1);//添加到最后
[].num=+1;
printf(“請輸入姓名:”);
scanf(“%s”,[].name);
printf(“請輸入電話1:”);
scanf(“%s”,[].tel1);
printf(“請輸入電話2:”);
scanf(“%s”,[].tel2);
printf(“請輸入電子郵箱:”);
{
scanf(“%s”,[].mail);
}
printf(“請輸入家庭地址:”);
{
scanf(“%s”,[].add);
}
++;//長度增加
printf(“輸入 0:退出, 輸入8:返回菜單
請輸入您的選擇: ”);
} int modify(struct sqlist &l){//修改信息
system(“cls”);struct txl n,gai;int k,k1;while(1<2){
search_1(l,n);//查找記錄
printf(“是否修改此記錄:(1=y/2=n)n”);
while(scanf(“%d”,&k)){//限制輸入,當k成功賦值時循環(huán)
if(k!=1&&k!=2)
printf(“請輸入1或2!”);
else
break;
}
if(k==2)
{
break;//輸入1修改,輸入2不修改并結束循環(huán)返回
}
if(k==1)
{
=;
printf(“請修改姓名:”);
scanf(“%s”,);
printf(“請修改電話1:”);
scanf(“%s”,1);
printf(“請修改電話2:”);
scanf(“%s”,2);
printf(“請修改電子郵箱:”);
scanf(“%s”,);
printf(“請修改家庭地址:”);
scanf(“%s”,);
[-1]=gai;
}
printf(“是否繼續(xù)修改?(1=y/2=n)”);
while(scanf(“%d”,&k)){
if(k!=1&&k!=2)
printf(“請輸入1或2!”);
else
break;
}
if(k1==1)//繼續(xù)循環(huán)
{
;
}
if(k1==2)//跳出循環(huán)
{
break;
} }
} printf(“輸入 0:退出, 輸入8:返回菜單
請輸入您的選擇: ”);test3_link.h int delete(struct sqlist &l,struct lnode* &head)//刪除通訊錄并保存到鏈表
{ system(“cls”);static int j=1;//當前編號
int i,k;struct txl n;struct lnode *p,*q;
p=(struct lnode *)malloc(sizeof(struct lnode));if(!p)exit(overflow);//分配存儲
q=(struct lnode *)malloc(sizeof(struct lnode));if(!q)exit(overflow);
printf(“請輸入你想刪的成員:n”);
search_1(l,n);//查找記錄
printf(“是否刪除此記錄?(1=y/2=n)n”);//輸入1刪除,輸入2不刪除并結束循環(huán)返回
while(scanf(“%d”,&k)){
if(k!=1&&k!=2)
printf(“請輸入1或2!”);
else
break;
}
if(k==1)
{
p->data=n;//將 search_1函數(shù)所找到的數(shù)據(jù)賦值給p->data
p->=j;//為刪除的記錄編號
p->next=head->next;
head->next=p;
q=head->next;
for(i=;i
{
[i-1]=[i];
[i-1].num=i;//編號
}
--;
j++;
}
if(k==2)
{
;
}
printf(“輸入 0:退出, 輸入8:返回菜單
請輸入您的選擇: ”);
} int recover(struct sqlist &l,struct lnode* &head){ system(“cls”);int n,number,k,a=0;char name1[10];struct txl n1;struct lnode* q,*p;q=(struct lnode*)malloc(sizeof(struct lnode));//存儲分配
p=(struct lnode*)malloc(sizeof(struct lnode));q=head->next;//指向第一個節(jié)點
p=head;//指向頭指針
menu_1();//顯示恢復菜單
while(scanf(“%d”,&n),n)//限制輸入,當輸入為int型,且不為0時循環(huán)
{
printf(“請問要恢復哪個成員?n”);
while(q!=null)//依次輸出所有被刪記錄
{
printf(“編號:%d ”,q->);
printf(“名字:%s ”,q->);
printf(“電話1:%s ”,q->1);
printf(“電話2: %s ”,q->2);
printf(“電子郵箱: %s ”,q->);
printf(“家庭地址: %sn”,q->);
q=q->next;} if(n==1){ printf(“請輸入所要恢復的編號n”);scanf(“%d”,&number);while(p!=null){
if(p->next->==number)
{
[]=p->next->data;//添加到末尾
[].num=+1;//編號
p->next=p->next->next;//將該記錄從鏈表中刪除
++;
printf(“恢復成功!n”);
a=1;//標記有此記錄,并已恢復
break;
}
p=p->next;} if(a==0)printf(“沒有該編號n”);
break;
} if(n==2){ printf(“請輸入所要恢復的姓名n”);
scanf(“%s”,name1);
while(p!=null){
if(strcmp(p->next->,name1)==0)
{
[]=p->next->data;//添加到末尾
[].num=+1;//編號
p->next=p->next->next;//將該記錄從鏈表中刪除
++;
printf(“恢復成功!n”);
a=1;//標記有此記錄,并已恢復
break;
}
p=p->next;}
}
if(a==0)
printf(“沒有該姓名n”);
break;} if(n!=1&&n!=2&&n!=0){
printf(“請輸入0-2!n”);
} } printf(“輸入 0:退出, 輸入8:返回菜單
請輸入您的選擇: ”);
《制作通訊錄》說課稿 編寫通訊稿篇四
《制作通訊錄》說課稿
一、說教材分析
首先我談談我對這篇教材的分析:
本節(jié)課《制作通訊錄》是福建教育出版社四年級下冊第二課的內(nèi)容,是基于第一節(jié)學習了制作簡單表格的知識上的進一步完善。本節(jié)課利用網(wǎng)絡環(huán)境,借助專題學習網(wǎng)站,創(chuàng)設信息化的教與學環(huán)境,利用優(yōu)美、生動的畫面,豐富有趣的情境,讓學生在親身的感受中說、做、學的過程,讓學生通過問題情境的感受,學習解決問題的方法,形成一定的知識解決模型,并最終解決實際生活問題。本節(jié)課的學習既是學生鞏固舊知識,也是掌握新知識的過程。
二、說教學目標
根據(jù)以上對教材的分析,我確定了三維目標:
1.知識目標:要求學生了解通訊錄的一般格式,學會在表格中插入行; 2.能力目標:要求學生掌握通訊錄的制作方法
3.情感目標:能激發(fā)學生的學習興趣,培養(yǎng)學生自主探究和合作的精神
三、說教學重難點
通過對三維目標的綜合總結,我得出本節(jié)課的 重點:插入規(guī)則的二維表格,并在單元格中添加數(shù)據(jù); 難點:如何在表格中增加一列
四、說教法學法
要達成以上三項教學目標,特別是要突破教學重難點,我在教法的選擇上以“激——導——探——放”為主要教學手段,目的是在課堂中通過創(chuàng)設情境激發(fā)學習興趣,借助老帥引導,師生共同探究,大膽放手讓學生在具體的實踐操作中運用。對于課堂教學中,學生學法的選擇是以“探究——合作——交流——運用”。學生通過自主探究,小組協(xié)同合作,組內(nèi)交流、師生反饋評價,最后把所學的知識運用于具體的實踐操作中。
五、說教學流程
這節(jié)課為了體現(xiàn)學生是學習的主體,以學生的學為立足點,教師的教為輔助點,我設計了以下的教學環(huán)節(jié):
第一個環(huán)節(jié)
(一)情境創(chuàng)設 引入新課
1、課伊始,課件出示一段視頻
內(nèi)容為:一位同學回家準備做作業(yè),卻忘記作業(yè)內(nèi)容,天又下起大雨,他想給同學打電話詢問作業(yè)的內(nèi)容
2、觀看結束后,向學生提出一個問題:這位同學要打電話,需要什么呢? 通過這個問題的提出,映出如果有通訊錄,就能給通訊錄上的同學打電話了 順勢引出這節(jié)課的內(nèi)容—制作通訊錄(板書出)
(這個環(huán)節(jié)的設計意圖是通過讓學生解決日常生活中遇到的問題來激發(fā)學生的學習興趣,興趣是最好的老師,它是學生主動學習、積極思考、大膽質(zhì)疑、勇于探索的強大動力,所以通過這個環(huán)節(jié),讓學生自始至終主動參與學習,全身心地投入到學習活動中)
第二個環(huán)節(jié)
(二)小組合作 探究學習
在這個環(huán)節(jié)中有三個教學內(nèi)容,第一個教學內(nèi)容是 了解通訊錄的一般格式并根據(jù)格式制作一張簡單的通訊錄
1、師:同學們,你們平常都從哪些地方可以看到通訊錄呢 手機上的通訊錄,以及各種紙質(zhì)通訊錄
2、課件展示一張簡單的通訊錄
設疑:同學們,這張通訊錄有哪些部分呢? 讓學生嘗試著說一說通訊錄的組成部分
在學生初步了解后,布置讓大家制作一張自己組內(nèi)成員的通訊錄的任務
3、在任務中巡視指導學習較困難的小組
4、學生在初步嘗試后,指名一組完成較好的小組長,上臺操作
(這部分教學內(nèi)容的設計思路:通過讓學生自己動腦思考,動手嘗試,調(diào)動學生參與教學的積極性,發(fā)揮學生自主探究的能動性,使課堂教學煥發(fā)出生機)
第二個教學內(nèi)容是: 在表格中增加一列
1、給學生設疑:如何在通訊錄中增加一列qq號
然后向學生提供一份學習幫助材料,材料中是通過“表格和邊框”工具插入一列的方法,讓學生仔細閱讀這份材料,與小組成員合作,在電腦完成增加一列,并填上qq號碼
學習幫助材料
增加一列的方法:
1、單擊工具欄上的“表格和邊框”按鈕,會彈出一個表格和方框的工具欄。
2、將鼠標移動到要增加一列的位置,當鼠標變成一個鉛筆形狀時,按住鼠標左鍵,自上而下畫一條線,這樣就增加一列了
2、在任務中巡視指導學習較困難的小組
3、交流反饋 總結方法
學生在初步嘗試后,指名一組完成較好的小組長,上臺操作,要求邊講解邊演示,根據(jù)學生的講解,板書出: 插入一列的方法:
“表格與邊框” 工具—彈出工具欄—移動至增加列位置—按住鼠標畫線(這部分內(nèi)容設計想法是:讓學生學習外在的理論知識,并通過嘗試操作轉化成內(nèi)在的技能,培養(yǎng)學生從獲取信息到處理信息的能力。給學生提供自主學習的空間。發(fā)揮學生學習的主動性,培養(yǎng)學生的自主學習能力,讓學生成為學習的主人)②總結這一種插入列的方法后,讓學生嘗試“增加一列”的其他方法: 如:選中一列,單擊鼠標右鍵,在彈出的功能中選擇增加一列項
(這部分內(nèi)容設計意圖:鼓勵創(chuàng)新,開發(fā)學生發(fā)散思維,充分開發(fā)學生個體的潛能,使學生的各種潛能得到優(yōu)化和發(fā)展,從而不斷提高學生個體各種素質(zhì)水平,促進學生身心全面和諧發(fā)展)
第三個教學內(nèi)容是: 手動調(diào)整列寬的教學
1、設疑:
師:同學們,通訊錄我們做完了,但是是不是看上去不大整齊美觀呢? 那我們要怎么調(diào)整呢?請同學們自己去嘗試下
2、老師提醒學生注意要點,移動鼠標到邊框線時當光標變成什么形狀時才可以調(diào)整寬度,巡視指導學習較困難的小組
3、學生在初步嘗試后,老師指名一組完成較好的小組長,上臺操作,要求邊講解邊演示
第三個環(huán)節(jié)
(三)深化運用 拓展延伸
1、布置任務:制作一張好友通訊錄
2、每個學生在自己的電腦上進行練習,完成后匯報小組長,小組長負責檢查小組成員全部完成情況,對優(yōu)秀作品給予獎勵
3、轉播學生的作品,指名個別同學上臺邊講解,邊操作
(這部分內(nèi)容設計思路:學生通過小組的任務驅使法,讓學生能較好地完成教師預設的教學目標,又突破了教學重難點。)
4、師生共同評價
第四個環(huán)節(jié)
(四)總結:
整節(jié)課通過循序漸進的方式一步步地練習,既完成信息技術課的主要任務、目標,又實現(xiàn)了信息技術學科與其他學科的有機整合,不但培養(yǎng)了學生合作意識,而且鼓勵創(chuàng)新,開發(fā)了學生的發(fā)散性思維