第一篇:華中科技大學材料成形及控制工程專業課程設計實例匯總
連接工程及自動化工裝
專業課程設計
設計題目:夾軌器支架
院 系:材料科學與工程學院
專業班級:材控0908
姓 名:XXX
組員:XX XXX XXX XX
指導老師:XXX
目錄
一、前期工作:......................................................2
1.討論圖紙......................................................3 2.工作任務的分配................................................3
二、車架前端焊接夾具的三維圖(簡化)................................4
三、生產工藝設計和焊接設計..........................................5
1.1號和20號直角連接板.........................................5
1.1 生產工藝設計.............................................5 1.2 焊接工藝設計.............................................7 1.3 焊接夾具設計.............................................8 2.14號和22號L型支架.........................................10 1.1 生產加工工藝設計........................................10 1.2 焊接工藝設計............................................11 3.12號和25號支架.............................................13 1.1 生產加工工藝設計........................................13 1.2 焊接工藝設計............................................14 4.16號軸與法蘭連接總成........................................15 1.1 生產加工工藝設計........................................15 1.2 焊接工藝設計............................................15 1.3 焊接裝備設計............................................17
四、總結...........................................................18
五、參考文獻.......................................................19
小組成員: XX,XXX,XXX,XXX,XXX 組長:XXX
一、前期工作
1.討論圖紙
小組成員共同讀圖,討論車架前端焊接夾具的工作原理,并把需要焊接成型工藝的部分單獨列出來進行設計。
具體工作原理是:車架前端焊接夾具通過上面六個氣缸對車架前端進行端面夾緊,下面兩個氣缸對車間前端進行橫向夾緊,并通過軸與法蘭實現固定和翻轉。由于車架前端焊接夾具結構較為復雜,且大部分零件之間的連接都是采用螺紋連接,因此我們選擇幾個重要零件的焊接進行生產工藝分析和焊接工藝分析。其中分析的主要內容有:1號和20號直角連接板、14號和22號L型支架、16號軸與法蘭連接總成、12號和25號支架。2.工作任務的分配
XXX:完成生產技術文件,即完成車架前端焊接夾具的三維立體圖。XX、XXX、XXX:責完成焊接件的生產工藝說明書、生產工藝卡、焊接工藝說明書、焊接工藝卡。其中XXX主要負責1號和20號直角連接板生產工藝和焊接工藝的設計,XX和XXX主要負責14號和22號L型支架、12號和25號支架的生產工藝設計和焊接設計以及16號軸與法蘭連接總成的焊接設計。
XX:責完成工藝裝備的設計和工藝裝備的說明書,即完成焊接工裝夾具的設計,并說明采用此夾具的原因。組長完成材料的整理和工作總結。
二、車架前端焊接夾具的三維圖(簡化)
三、生產工藝設計和焊接設計
1.1號和20號直角連接板 1.1 生產工藝設計
直角連接板在本裝置中其連接、支撐的作用,由角鋼和肋板構成。結構簡單,加工方便。其中主要的工藝為角鋼和肋板的焊接。具體的加工過程如下: 加工成形:(1)材料的儲備 Q235,厚度為10mm(2)材料的復驗 檢驗化學成分與力學性能(3)材料的除銹
用噴丸法除銹,并上底漆(4)材料的矯正
鋼板校平機校正,型材校正機校正(5)放樣、劃線和號料
通過劃線,定位板材加工尺寸和位置(6)下料
機械切割、火焰切割,將材料加工至符合圖紙尺寸。(長250mm,寬200mm)
在指定位置進行攻螺紋,以便于之后的固定。(7)坡口及邊緣加工(本焊接工藝不開坡口,無)(8)彎曲及成形
應用折彎機將材料折彎90°,使之成直角(角鋼)(9)其他工藝
肋板的加工:根據圖示肋板的形狀制作相應沖頭,使用厚度為10mm的薄板作為底料進行沖裁即可獲得所需肋板。其中1號直角連接板共需兩塊肋板,20號直角連接板共需三塊肋板。焊接肋板:
(10)將制作好的肋板通過夾具固定于直角連接版待焊位置處,采用手工電弧焊工藝將其焊牢。安裝(11)將焊好肋板的連接板用螺栓連接主體之上,直角連接板的加工和裝配即告完成。
具體生產工藝卡鍵后面附表 1.2 焊接工藝設計
說明:該部件的焊接工藝為角鋼與肋板的焊接,屬于薄板結構焊接,焊縫類型為T型接頭,角焊縫。焊接準備:
所需的焊接為直角形支架(角鋼)與肋板之間的焊接。(1)焊前清理
仔細清理加工碎屑、殘余氧化皮等(2)焊接材料的儲存
焊材采用J422(E4303)電焊條,焊條于使用前進行350°C烘干1-2h后放在保溫筒內隨用隨取。
(3)焊接結構的裝配(采用夾具將肋板固定于角鋼上即可)
注:焊前在焊縫兩端做好相應標記,記錄數據。以用于檢查焊接收縮量,控制焊接應力變形。焊接工藝:(4)焊接工藝方法
焊縫屬于T型焊縫,即角焊縫。采用手工電弧焊焊,焊縫對稱布置于肋板兩側。作為薄板結構,可采取一層焊縫即可焊透。(5)焊接參數選擇
焊材為Q235鋼,焊接性良好。選擇與Q235相適應的J422(E4303)牌號焊條,φ=4mm。查焊接手冊,可選用整流器ZXG-300R作為焊接電源。板厚在9-12mm時,焊角尺寸的最小值為5,這里選擇6。并根據焊條直徑確定焊接電流在160-200A,焊速適中,在5-8之間選擇。(6)焊接順序
為盡量減少焊接殘余應力,保證構件受力均勻,應采取對稱的焊接順序。先焊位于角鋼一側左邊的焊縫,再焊角鋼另一側右邊的焊縫。具體焊接順序參見焊接工藝卡。(7)焊前預熱和焊后熱處理
在100°C~150°C之間進行焊前預熱,焊后不做熱處理,直接空冷即可。(8)檢驗與修整(9)涂漆
具體焊接工藝卡見附表 1.3 焊接夾具設計(1)夾具設計任務
將梯形板兩腰焊接在直角角鋼上(2)零件說明
支架,專用擋鐵(2),肋板定位器,螺釘
(3)方案設定
見下圖,用夾緊器固定肋板xz方向移動,y方向轉動,用兩塊專用檔鐵固定肋板xy方向轉動達到固定效果
(4)焊后缺陷以及防止
角鋼肋板焊接極容易造成角變形,角鋼會小于90度,因此焊接時采用剛性固定法。2.14號和22號L型支架 1.1 生產加工工藝設計(1)材料的儲備
Q235,厚度為20mm及14mm(2)材料的復驗
檢驗化學成分與力學性能(3)材料的除銹
用噴丸法除銹,并上底漆(4)材料的矯正
鋼板校平機校正,型材校正機校正(5)放樣、劃線和號料(6)下料
機械切割、火焰切割,將材料加工至符合圖紙尺寸。(長240mm,寬194mm;長262mm寬140mm;)
在指定位置進行攻螺紋,以便于之后的固定。(7)坡口及邊緣加工(無)(8)彎曲及成形
應用折彎機在給定位置將材料折彎90°,使之成L型支架(9)其他工藝
肋板的加工:根據圖示肋板的形狀制作相應沖頭,使用厚度為14mm,10mm的薄板作為底料進行沖裁即可獲得所需肋板。分別需一塊和兩塊肋板。
生產加工工藝卡見附表 1.2 焊接工藝設計 焊接準備:
所需的焊接為L型支架與肋板之間的焊接。(1)焊前清理
仔細清理加工碎屑、殘余氧化皮等(2)焊接材料的儲存
焊材采用J422(E4303)電焊條,焊條于使用前進行350°C烘干1-2h后放在保溫筒內隨用隨取。
(3)焊接結構的裝配(采用夾具將肋板固定于L型支架上即可)焊接工藝:(4)焊接工藝方法
采用手工電弧焊焊,焊縫對稱布置于肋板兩側。作為薄板結構,可采取一層焊縫即可焊透。(5)焊接參數的選擇
焊材為Q235鋼,焊接性良好。選擇與Q235相適應的J422(E4303)牌號焊條,φ=4mm。查焊接手冊,可選用整流器ZXG-300R作為焊接電源。板厚分別在16-23mm和12-16mm時,焊角尺寸分別選擇8,6.并根據焊條直徑確定焊接電流在160-200A,焊速適中,在5-8之間選擇。
(6)焊接順序
為盡量減少焊接殘余應力,保證構件受力均勻,應采取對稱的焊接順序。先焊位于L型支架一側左邊的焊縫,再焊另一側右邊的焊縫。具體焊接順序參見焊接工藝卡。(7)焊前預熱和焊后熱處理
在100°C~150°C之間進行焊前預熱,焊后不做熱處理,直接空冷即可。(8)檢驗與修整(9)涂漆 安裝:
(10)將焊好肋板的L型支架用螺栓連接主體之上,L型支架的加工和裝配即告完成。
焊接工藝卡見附表 3.12號和25號支架 1.1 生產加工工藝設計
支架(2)(3)均是由兩塊焊接好的鋼板,兩端在焊接兩塊底板構成,在本裝置中是將氣缸在空間指定位置與主體連接起來。其中主要的工藝是兩塊連接板之間的焊接,及其與兩端底板的焊接,其具體加工過程如下:(1)材料的儲備
Q235,厚度為10mm及18mm(2)材料的復驗
檢驗化學成分與力學性能(3)材料的除銹
用噴丸法除銹,并上底漆(4)材料的矯正
鋼板校平機校正,型材校正機校正(5)放樣、劃線和號料(6)下料
機械切割、火焰切割,將材料加工至符合圖紙尺寸,即可得到兩 塊底板和連接板
在兩塊底板指定位置進行攻螺紋,以便于之后的固定。(7)坡口及邊緣加工(無)
生產工藝卡見附表 1.2 焊接工藝設計 焊接準備:
所需的支架焊接為底板與兩連接板之間的焊接。(1)焊前清理
仔細清理加工碎屑、殘余氧化皮等(2)焊接材料的儲存
焊材采用J422(E4303)電焊條,焊條于使用前進行350°C烘干1-2h后放在保溫筒內隨用隨取。焊接工藝:(3)焊接工藝方法
采用手工電弧焊焊,連接板采用角焊接頭,12號和25號連接板之間外角連接處開V形坡口,兩側焊接一層即可。已焊連接板與底板用T型接頭,均需在連接板上開K形坡口,焊接一層即可。(4)焊接參數選擇
焊材為Q235鋼,焊接性良好。選擇與Q235相適應的J422(E4303)牌號焊條,φ=4mm。查焊接手冊,可選用整流器ZXG-300R作為焊接電源。連接板板厚在9-12mm時,焊角尺寸的選擇6。(5)焊接順序 為盡量減少焊接殘余應力,保證構件受力均勻,應采取對稱的焊接順序。先將兩塊連接板焊好,在分別將其與兩塊底板焊接。(6)焊前預熱和焊后熱處理
在100°C~150°C之間進行焊前預熱,焊后不做熱處理,直接空冷即可。(7)檢驗與修整(8)涂漆
焊接工藝卡見附表 4.16號軸與法蘭連接總成 1.1 生產加工工藝設計
軸與法蘭均為購買的產品,不需要設計生產加工工藝。1.2 焊接工藝設計(1)材料選用:
軸與法蘭均采用45號鋼,需在調質或正火為最終狀態下作為母材進行焊接。(2)法蘭坡口制備:
(3)焊接工藝: 1.焊前預熱
焊前在焊接法蘭端進行預熱350℃。2.焊接 采用手工電弧焊
A 焊條選用,J507,焊條直徑Φ4.0和Φ5.0。
B焊條烘干,焊條在焊前須經350℃烘干1h,做到隨烘隨取用。C焊接電流: Φ4.0 I=170~230A Φ5.0 I=190~300A D 焊接電流極性:采用直流反接。
E焊接順序:如圖所示,靠近軸身一面先焊2~3層后,用加工工清工,并保持層間溫度后,翻轉焊接,以后每面焊2~3層后,均要進行翻轉焊接。
第一層:用Φ4.0焊條打底,電流I=170~230A。
第二層及以后各層,均用Φ5.0焊條填充。電流I=190~300A。
在焊接過程中,盡可能選用小電流進行焊接,并在焊接時保持層間溫度300~400℃。(4)焊后熱處理: 焊后應立即進行消除應力,回火,其溫度在600`~650℃,保持時間約4h,隨爐溫緩冷至室溫取出。焊接工藝卡見附表 1.3 焊接裝備設計(1)夾具設計任務
法蘭和軸的焊接為兩條環形焊縫(2)零件說明
直角定位件(2),支撐釘(2),定位板(2),壓夾器(5)
(3)方案設定
見下圖,用直角定位器和定位板定位法蘭,夾緊器和支撐釘固定軸。
四、總結
作為機械類的學科,課程設計是必不可少的一環,它通過學生自己的實踐將課本中的知識深化,鍛煉實際能力。這次的課程設計,我們小組通過齊心協力,分工合作,完成了車架前段焊接夾具的一整套開發和設計加工過程。在一開始我們拿到圖紙的時候,對巨大的工作量和復雜的部件感到茫然和不知所措。但在查閱了諸多資料,并進行了多次小組討論之后,漸漸的對我們所要做的工作有所認識。而在實際動手的過程中,我們也遇到了不少難題。這些,我們都靠自己的力量探索、解決。最終我們完成了這項任務。不僅對相關專業知識的鞏 固和提升有很大的幫助,也加強了我們的團隊協作能力,為我們今后的發展打下了良好的基礎。
五、參考文獻
1、《焊接結構生產及裝備》 周浩森,機械工業出版社,1992年
2、《焊接工裝夾具及變位機械圖冊》 王政,劉萍,機械工業出版社,2006年
3、《焊接工裝設計》 陳煥明,航空工業出版社,2006年
4、《焊接工裝夾具及變位機械-性能、設計、選用》 王政,中國標準出版社,2001年
5、《鋼結構焊接制造》 王國凡,化學工業出版社,2004
第二篇:2010華中科技大學碩士研究生入學考試“水污染控制工程”
2010華中科技大學碩士研究生入學考試“水污染控制工程”
考試大綱
第一部分 考試說明
一、考試性質
鑒于水污染控制工程在環境工程中的重要性,所以把水污染控制工程學列入環境工程碩士研究生考試科目中。通過水污染控制工程考試,評判考生是否達到高等學校環境工程專業優秀畢業生的水平,以保證所錄取的考生具有較好的環境工程專業水平,滿足新世紀環境工程對本專業碩士研究生的要求。
考試對象為參加2010年全國碩士研究生入學考試的準考學生。
二、考試形式與試卷結構
(一)答卷方式:閉卷,筆試
(二)答題時間:180分鐘
(三)題型比例:
選擇約20%;填空約20%;判斷及改錯約10%;問答題約30%;綜合分析與計算約20%。
其中《排水工程》上冊約20%,《水污染控制工程》下冊約80%。
(四)參考數目
高廷耀等.《水污染控制工程》下冊.高等教育出版社.第三版 孫慧修等.《排水工程》上冊.中國建筑工業出版社.第四版
第二部分 考查要點
一、污水的收集與輸送系統
二、污水水質和污水出路
三、污水的物理處理
四、污水生物處理的基本概念和生化反應動力學基礎
五、活性污泥法
六、生物膜法
七、穩定塘和污水的土地處理
八、污水的厭氧生物處理
九、污水的化學與物理化學處理
十、城市污水回用
十一、污泥的處理與處置
第三篇:華中科技大學材料成形原理 考研經驗全
年輕時的我相信有些事歷經歲月洗禮依然歷久彌新。在我備考幾個月里,我被壓力裹住,感覺幾近窒息,寸步難行。在無數個夜不能寐的日子里,我都覺得備考這段時間是我生命中最難熬、最痛苦、最灰暗、也最深刻的記憶。在無數個看不進去書,站在窗戶旁抽煙的時間里,我在想:“要是我考上了華科材料加工,那我該多么輕松,多么開心啊?!?/p>
然而,目前我已經被錄取,內心依然充滿著茫然,遠沒有想象的那么快活和愜意。我的考研記憶隨著時間悄然流逝,越來越像無關自己的夢?,F在趁曾經的夢還算清晰,想做點什么,為了紀念自己,順便也方便一下學弟學妹們吧。
一、我的簡介
性別男,25歲,其余省略數字。
2008年7月8日畢業于一所985院校材料科學與工程系。同年7月18日在一家大型冶金裝備制造企業任所謂的助理工程師。10年9月13日辭職,背著兩年的工作經驗滿懷希望來武漢求職,找工作才發現什么往屆的本科生只能用地位卑微來形容。十一終定下心來考研,(在職時看了些高數課本,但因為總是出差,進展很慢)一路跌跌撞撞硬著頭皮堅持到最后。初試分數比較低,但復試發揮較好,加之今年對985的學生有所照顧,復試成績很高。以極大的運氣拿到了全獎。其中經歷的各種絕望、痛苦、彷徨、焦慮、糾結按下不表。
外??既A科的學弟學妹們,希望你們能盡量提高自己的初試分數,目前不要寄希望于復試發揮,盡管它也很重要。211和985的考生也不應該掉以輕心,每年的政策都是不一樣的。我面試發揮較好得益于以前工作時經常面臨一些大場合,有一定經驗。其實初試分數越高,心態才越容易平穩。初試分數低,因為太沒自信,壓力又大,其實很難發揮好。
考上的同學里,我都沒有見過政治和英語比我還少的。英語差到令人發指的地步。好在論壇上各位高手的經驗貼已足夠多,公共課的復習可以參考別人的(其實也沒必要)。數學我有一些小經驗,這個有同學感興趣的話這個帖子里。我介紹華中科技大學810《材料成形原理》的各種用書資料和復習經驗。歡迎11屆同學進行補充和討論。
二、資料分析
1:教材
08年以前華科使用的是陳平昌、朱六妹、李贊材料成形原理第一版。08年也發生了教材革,目前華科本校使用吳樹森、柳玉起 主編,材料成形原理第2版;是大綱中指定的參考書。
2:PPT課件
印象深刻的是包辛格效應 10年和11年連續兩年考,但是教材上是找不到,課件上卻有。課件的好處至少知道哪些是重點。
3:材料成形工藝
這本書很重要,但華科的官方聲明中從未提及,所謂的信息不對稱大概就是說的此類情況。
11年的從中出了一道原題。復試時顯得更為重要。也有兩個版本。
《材料成形工藝》第一版夏巨諶2005-1-1出版
《材料成形工藝》第二版夏巨諶,張啟勛 2010-2-1出版
建議買第一版的。因為大多數老師手頭上都是第一版,用習慣了。
4:十年真題
5:所謂的筆記和課后習題
網上有一部分賣資料的筆記和課后題都是對應第一版。習題和答案我傳上來了,做做參考即可。大家也不要去買了。
以上資料就夠了,有同學想把金屬塑性成形解析方法(主要是主應力法)搞的相當明白的,可以參考專門資料。
三、試卷結構
02—07年6套真題試卷分為A、B、C、D四部分,其中A卷為必答題(75分,涉及鑄造、焊接、塑性成形,內容偏重于基礎)B、C、D為選做,分別為鑄造、焊接、塑性成形,有一定難度,各卷為75分,考生按照自己情況選做。
08年以后改革,鑄造、焊接、塑性成形放在一張試卷上。題型一般為:名詞解釋、簡答題、分析論述題和計算題。
四、真題分析
2011年專業課真題難度較之往年還是較大的提高。具體表現在需要自己總結性的題目多了些; 出題風格同以往不一樣了(出題老師換了?);最后一道大題大多數人都不會做等。但整體上其實都是在課本范圍以內,有一個題是《材料成形工藝》這本書上的,最后一道大題絕大多數人不會做也就無所謂了。
02年—04年真題內里有大量的非現行教材內容,參考價值較小。
05年—07年真題絕大多數是現行教材里的內容,具有較大參考價值
08年以后,華科不再對外公布真題資料。但08年,09年的真題還是通過某些渠道外流出來。10年我是整理了兩個2010屆考生的回憶版真題,但遺憾也只有120分左右的內容,至今無真題。11年的真題是我考完當晚記下來的,但也差一道問答題,怎么也想不起來了。
鑒于試卷結構的改革,我只對08—11年的真題做了分析。10年、11年真題分值上有出入(因為沒有記錄具體細則),但問題不大??赐昃蜁靼字攸c在哪里?
五、教材內容分析
1:鑄造和焊接部分所有的數學模型不用看,(除勻質形核、異質形核的臨界形核功和臨界半徑;平衡凝固和固相無擴散、液相均勻混合的溶質再分配中溶質質量分數的計算;焊接時添加的合金元素質量分數。)充型能力的計算、熱量傳輸模型、鑄件凝固時間等等凡是數學公式比較長,比較難的不用看。
2:偏晶合金與包晶合金的凝固、對流對凝固組織的影響及半固態金屬的凝固、金屬基復合材料的凝固等部分十年未考。感覺不放心的話,記一些名詞解釋,其他不用看。
3:第六章:特殊條件下的凝固、第十章特種連接成形原理與方法。十年內只考了一個名詞解釋定向凝固。建議只準備相關的名詞解釋。
4:塑性成形是重點中的重點要想得高分塑性成形解析方法必須相當過關。(主要是主應力法,11年考了工程法解圓柱墩出粗的單位流動壓力,幾乎沒有人會做,大部分人應該用的是主應力法,最后好像也算對了)。好在塑性成形解析方法的題目出難了大家都不會做。
5:第一遍看書其實很重要,第一遍認為是重點以后多次循環復習時習慣性地以第一遍的重點為重點,對其余的都不怎么關心。這是一種慣性和心理習慣。
6:鑄造和焊接偏記憶、塑性成形記憶和理解都有。第一遍復習時把所有的知識點吃透,鑄造、焊接背一遍之后,然后主攻塑性。到后期再狂背吧,背到吐為止。
7:盡管今年的專業課題目較難,但相比數學、政治、英語。專業課的復習是最輕松的,最容易拿高分的,回報率最大的。所以,不要擔心,不要害怕。
8:其他的等想起來再補充吧。
六、關于考試
1:備考時輔導我的兩位10屆考生一位告訴我考試時在那里干等了一個小時;一位告訴我花了一個半小時把全部的題目都做完了。給我錯覺得專業課考試時間怎么都是夠用的,導致前面的小題目寫的太多,總結性大題總想面面俱到。等我回神過來時間已過2小時多,我的計算題(共40左右)還沒有動。第一個計算題很簡單,但是不準用計算器,焦急的沒有心思去計算,只有把步驟和公式往上堆。慌亂中,公式也漏掉一個字符。第二題也沒有推出正確的結果———本來都是爛熟于胸的題目。最后一道大題完全不會??纪旰笙胩鴺恰1J毓烙嬤@兩道題至少丟了8分左右。初試多8分我的初試排名將上升20位。所以時間分配一定要合理
2:不會做的題,像政治一樣隨便往上寫吧。不要怕寫錯,我有兩道題完全不會做,胡亂寫了些,還是給分了的。
七、關于影響外??忌浫〉囊蛩?/p>
影響外校錄取的因素一直都是很微妙的。我自己其實也是稀里糊涂,現在總結出這些有馬后炮之嫌。關于最終錄取,我列出自己的一些觀點,僅僅代表個人觀點,今年考研的情況,不權威,不保證可靠性,僅做參考。希望各位同學也不要太相信這些總結,多找上屆學長咨詢交流。(歡迎討論此項)
首要條件是進入復試。
1:初試成績高、復試表現好、本科院校不占優勢被錄取可能性也較大。
2:初試成績高、復試表現較差、本科院校不占優勢不一定會錄取。
3:初試成績一般、復試表現較好、本科院校不占優勢有可能被錄取。
4:初試成績不高、復試表現較好、本科院校占優勢有可能被錄取。
5:導師接收你意愿的大小跟被錄取沒有太多關系。最重要的是征服面試小組的老師,復試過了總
會用老師要你的。有關系者不在此范圍內。導師非常欣賞你,肯出面為你跑關系,打招呼的不在此范圍內。
6:報考的老師是面試小組成員的學生占一定優勢,前提是導師對你有好印象,想要你。八:關于外校
本校考生復試的時候真的很輕松,當時我有各種羨慕嫉妒恨。但現在想來,顯然這種情緒是根本沒有必要的。
華科本校材加12個班,每班30個。共360人。而今年華科本校的錄取的不超過40個。要是這些人都背負著和我們一樣的壓力,付出同我們一樣多,那么本校就算有5分之1的人考研,外校的也沒有機會了。很多本校的因為身上巨大的優勢,懶散地復習,初試不過線的人一把一把的。這種現象不僅發生在華科,而且發生在我的母校。我覺得我今年考母校也就考不上了,盡管材加分數線比華科低一些。
幸好我們是外校的,我們前方荊棘,所以我們更努力。
幸好我們是外校的,我們戰戰兢兢,所以我們更勇敢。
幸好我們是外校的,我們忐忑不安,焦慮不已,歷盡艱辛,所以我們收獲更多。
也只有經過這樣的破繭成蝶,我們才能最終的在華科的偌大的校園里悠閑漫步,碰到校長時,自然地叫他一聲“根叔”。
最后預祝各位能禁得住考驗,堅持到最后。你痛苦地難以承受的時候,其實也是上天垂青你的機遇。所有的痛苦在錄取那天都將成為財富。(好吧,我承認,這是鼓勵你們的煽情話語,我得到的沒有我想象那么多)
第四篇:華中科技大學軟件課程設計報告
軟件課程設計報告
班 級:姓 名:學 號:
光 信0 8 0 4 廖 娟
U 2 0 0 8 1 3 1 9 7 光信0804廖娟
U200813197
目 錄 軟件設計............................................4
1.1 設計題目及目的.................................4 1.2 設計思想.......................................4 1.3 背景知識.......................................4(1).定義:.....................................4(2).存儲結構:.................................5(3).遍歷二叉樹:...............................6 1.4 程序結構及功能劃分.............................7(1).廖娟#注釋.cpp..............................7(2).廖娟#軟件課程設計.cpp......................8 1.5 程序流程......................................10 2 軟件測試...........................................14
2.1 測試環境......................................14 2.2 廖娟#注釋.cpp 的測試過程.......................14 2.3 廖娟#軟件課程設計.cpp 的測試過程...............15(1).程序運行前的初始界面.......................15(2).輸入數據及二叉樹打印的畫面.................16(3).選擇操作的提示畫面.........................16(4).程序測試時的畫面..........................17 3 算法改進...........................................19
3.1問題發現......................................19 軟件課程設計
2010年1月
(1).問題一:..................................20(2).問題二:.................................21 3.2解決方案......................................21(1).問題一改進方案:.........................21(2).問題二改進方案:.........................22 4 開發體會...........................................23 附錄:源代碼清單......................................25
廖娟#注釋.cpp.....................................25 廖娟#軟件課程設計.cpp.............................29 參考文獻.............................................35 光信0804廖娟
U200813197軟件設計
1.1 設計題目及目的
設計題目:二叉樹的查找--用鏈表結構實現二叉樹建立、查詢、打印的源程序。
設計目的:基于C語言的基礎,熟練運用結構體等擴展數據手段,定義應用數據、并進行運用。本題要求掌握數據的鏈式存儲結構,并編程實踐它們的實現、應用方法。
1.2 設計思想
利用結構體,鏈表等數據結構,以及折半查找、選擇排序等基本算法,結合指針,文件等相關知識,利用C語言編寫鏈式結構實現二叉樹的建立、打印、查詢、先序遍歷、中序遍歷、后序遍歷等基本功能,并將這些功能用獨立的子函數實現,通過主函數的調用實現相應的功能。
1.3 背景知識
(1).定義:
二叉樹是由n(n>=0)個結點的有限集合構成,此集合或者為空集,或者由一個根結點及兩棵互不相交的左右子樹組成,并且左右子樹都是二叉樹。
這也是一個遞歸定義。二叉樹可以是空集合,二叉樹結點的子樹 軟件課程設計
2010年1月
要區分左子樹和右子樹,即使只有一棵子樹也要進行區分,說明它是左子樹,還是右子樹。二叉樹的定義方法:
Struct tree { char info;struct tree *left, *right;
}(2).存儲結構:
存儲結構分為順序存儲結構和鏈式存儲結構。
a.順序存儲結構:從樹根起,自上層至下層,每層自左至右的給所有結點編號缺點是有可能對存儲空間造成極大的浪費,在最壞的情況下,一個深度為H且只有H個結點的右單支樹確需要2h-1個結點存儲空間。而且,若經常需要插入與刪除樹中結點時,順序存儲方式不是很好!光信0804廖娟
U200813197
b.鏈式存儲結構:
存儲二叉樹經常用二叉鏈表法
(3).遍歷二叉樹:
假如以L、D、R分別表示遍歷左子樹、遍歷根結點和遍歷右子樹,遍歷整個二叉樹則有DLR、LDR、LRD、DRL、RDL、RLD六種遍歷方案。若規定先左后右,則只有前三種情況,分別規定為:
DLR——先(根)序遍歷,LDR——中(根)序遍歷,軟件課程設計
2010年1月
LRD——后(根)序遍歷。①.先序遍歷二叉樹的操作定義為: 若二叉樹為空,則空操作;否則 A.訪問根結點; B.先序遍歷左子樹; C.先序遍歷右子樹。
②.中序遍歷二叉樹的操作定義為: 若二叉樹為空,則空操作;否則 A.中序遍歷左子樹; B.訪問根結點; C.中序遍歷右子樹。
③.后序遍歷二叉樹的操作定義為: 若二叉樹為空,則空操作;否則 A.后序遍歷左子樹; B.后序遍歷右子樹; C.訪問根結點。
1.4 程序結構及功能劃分
(1).廖娟#注釋.cpp
主要分為主函數、創建二叉樹子函數、二叉樹查詢子函數、二叉樹打印子函數四個部分。其基本功能分塊,如下圖所示: 光信0804廖娟
U200813197
(2).廖娟#軟件課程設計.cpp 在 廖娟#注釋.cpp 的基礎上進行了一些算法改進,進行了簡單的界面設計,能夠實現友好的交互,系統用戶進入界面控制后,對不同的功能操作提示不同,此外加入了二叉排序樹的前序遍歷程序、中序遍歷程序和后序遍歷程序。
①.先序遍歷源代碼:
void PreorderTraversal(struct tree *root){ if(root==0)return;printf(“%c”,root->info);軟件課程設計
2010年1月
PreorderTraversal(root->left);PreorderTraversal(root->right);} ②.中序遍歷源代碼:
void InorderTraversal(struct tree *root){ if(!root)return;InorderTraversal(root->left);printf(“%c”,root->info);InorderTraversal(root->right);} ③.后序遍歷源代碼:
void PostorderTraversal(struct tree *root){ if(!root)return;PostorderTraversal(root->left);PostorderTraversal(root->right);printf(“%c”,root->info);} 光信0804廖娟
U200813197
1.5 程序流程
廖娟#注釋.cpp的主程序的流程圖如下: 軟件課程設計
2010年1月
創建二叉樹的流程圖如下: 光信0804廖娟
U200813197
二叉樹查詢的流程圖如下: 軟件課程設計
2010年1月
二叉樹打印的流程圖如下: 光信0804廖娟
U200813197軟件測試
2.1 測試環境
Microsoft Visual C++
2.2 廖娟#注釋.cpp 的測試過程
但是在測試的過程中也發現了一些問題,設計示例給出的源代碼中存在幾個問題在下圖所示操作中暴露出來了:軟件課程設計
2010年1月
具體的解決方案見算法改進。
2.3 廖娟#軟件課程設計.cpp 的測試過程
輸入50個數字(或字母),對 廖娟#軟件課程設計.cpp 進行測試。(1).程序運行前的初始界面 光信0804廖娟
U200813197
(2).輸入數據及二叉樹打印的畫面
(3).選擇操作的提示畫面 軟件課程設計
2010年1月
(4).程序測試時的畫面
①.選擇1,進行先序遍歷; ②.選擇2,進行中序遍歷; ③.選擇3,進行后序遍歷;
④.選擇4,進行查詢結點,再輸入要查詢的結點e,找到了,輸出:
Successful search!!key=e
繼續輸入w,同樣查詢成功; ⑤.輸入m,沒找到,輸出結果:
Search Failure!!光信0804廖娟
U200813197
⑥.再次選擇3,進行后序遍歷,與③輸出相同;
再次選擇2,進行中序遍歷,與②輸出相同; ⑦.再次選擇4,進行查詢結點,運行結果正常; ⑧.再次選擇1,進行先序遍歷,與①輸出相同; ⑨.選擇8,輸入錯誤,沒有對應的操作,輸出:
您 的 輸 入 有 誤,請 重 新 輸 入!!⑩.選擇5,進行退出操作,輸出:
光 信 0 8 0 4 ———— 廖 娟0 1 0 年 1 月軟件課程設計
2010年1月算法改進
3.1問題發現
在完成第4項選做項目時,程序前面部分的創建、查詢、打印二叉樹的算法仍采用已給出的設計示例中的算法,但是在測試過程中發現存在問題。光信0804廖娟
U200813197
(1).問題一:
第一次先序遍歷的輸出結果為:edaf
第二次先序遍歷的輸出結果為:f 經過觀察及調試發現問題在于查詢二叉樹子函數,其中root是根結點,運行查詢后root就被移動了,所以再次要求先序遍歷的結果就與第一次先序遍歷的結果不同。
未改動前源代碼如下: 軟件課程設計
2010年1月
(2).問題二:
設計示例中給出的函數運行后,沒有退出的方式,即沒有出口,程序無法正常退出。
3.2解決方案
(1).問題一改進方案:
函數內部定義一個指針tree *t,用 *t指向根結點,這樣進行查詢操作后根結點就不會移動了。
改動后源代碼如下: 光信0804廖娟
U200813197
(2).問題二改進方案:
在switch語句中增加:
case 5:
printf(“
光 信 0 8 0 4 ———— 廖 娟nn”);printf(“ 0 1 0 年 1 月nn”);return;來實現退出程序的操作,具體解決方案見
廖娟#軟件課程設計.cpp 的源代碼。軟件課程設計
2010年1月開發體會
剛剛拿到軟件課程設計的題目時,我震驚了,二叉樹?這是什么東西,上學期學習C語言的時候好像沒學到二叉樹啊。聽了老師的介紹才知道做這個題目的軟件課程設計還要先學習一下數據結構中關于二叉樹部分的知識,當時我真的是有些不知所措,本就不怎么好的C語言加上完全不會的數據結構二叉樹使我開始懷疑:三個星期后我可以完成這份關于二叉樹的查找的軟件課程設計嗎?
最初的幾天也確實很沒有頭緒,只是想著想把老師給的資料都看了,看完了之后走一步算一步吧,可是看完了之后發現仍然沒有很大的收獲,連怎么二叉樹到底有什么用都不知道,對于這個題目依然是十分陌生。可是時間緊迫啊,于是找了位學習過數據結構的同學借了本數據結構的書,研究了一番,在加上在網上搜索了一番終于有些頭緒了,知道這份課設到底要我們做什么了!
接下來的幾天,隨著了解的加深,自己開始慢慢的做課設了,當然從和同學的交流中,我也學到了很多。這之后我一步步的完成了對設計示例的注釋,對遞歸算法的理解,以及先序遍歷、中序遍歷、后序遍歷程序的書寫,最終完成了程序的開發。程序開發中我記憶最深刻的就是編寫選擇操作的提示界面和初始界面的時候,為了使界面更加友好,加入了一些人性化的語句,以及為了出現歡迎界面進行的許多次試驗,慢慢的我覺得這個過程十分有趣,看著自己編排的界面出現在面前心中還是有些許成就感的。當然除了這些還有很令我頭疼的 光信0804廖娟
U200813197
程序調試過程:在程序的調試階段,發現程序中有許多問題,有的根本不知道從哪入手解決問題,甚至不知道為什么會出現錯誤,也因此耗費了很多時間,讓我苦悶了很久。
在這段時間里,因為有軟件課程設計,讓我學到了很多知識,收獲了很多我,自我感覺自己解決問題的能力提高了,并且掌握了軟件開發的一些基本的方法和技巧。還記得寫課設報告的時候,花了一天的時間把報告里面的所有圖都畫完了,從剛開始的不會用畫圖軟件,到后來慢慢摸索最后熟練運用,畫圖的速度是越來越快了,讓我后來甚是欣慰。
經過了這一次的軟件課程設計,我感受到了C語言的魅力,也深切的體會到了“學海無涯”這四個字的分量。在以后的日子里,我所需要學習的東西還有很多很多,應了那句“書山有路勤為徑,學海無涯苦作舟。” 軟件課程設計
2010年1月
附錄:源代碼清單
廖娟#注釋.cpp #include
*/ #include
/* 定義二叉樹結構
*/ struct tree
{
char info;
// 定義char型變量,存放數據
struct tree *left,*right;
// 左子樹指針,右子樹指針
};/* 定義結構指針變量,作用創建二叉樹
*/ struct tree *create_btree(struct tree *root,struct tree *r,char info);/* 定義結構指針變量,作用查詢數據
*/ struct tree *search_btree(struct tree *root,char key);/* 定義子函數,作用打印二叉樹
*/ void print_btree(struct tree *r,int l);
/* O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ */ /* 主函數
*/ void main(){
char s[100],c,key=' ';
struct tree *root=0;
// 定義結構指針根結點,初始化為0
/* 讀入二叉樹的各個結點的值,并將其插入到二叉樹中
*/
do {
printf(“Enter a letter:”);
gets(s);
// 數據輸入過程
if(!root)
root=create_btree(root,root,*s);
// 如果二叉樹還未建立,則建立根結點并保存數據
else
create_btree(root,root,*s);// 如果二叉樹已建立,則建立新的子樹
}
while(*s);
// 直到s字符串為空,停止輸入
print_btree(root,0);光信0804廖娟
U200813197
/* 查找具有指定值的結點
*/ key='1';while(key){
printf(“Enter a key to find:”);
scanf(“%s”,&c);
root=search_btree(root,c);
printf(“press to continuen”);} }
/* Btree.C 結束
*/
/* O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ */ /* 創建二叉樹
*/ struct tree *create_btree(struct tree *root,struct tree *r,char info)/* struct tree *root:根結點
struct tree *r:要增加的結點
char info:要保存的數據
*/ {
if(r==0)
// 如果當前位置無結點,則將新結點插入此處
{
r=new(struct tree);
// same as function: malloc(sizeof())
if(r == 0)
{
printf(“Out of memoryn”);
return 0;
}
r->left= 0;
r->right=0;
r->info=info;
// root為空,則插入后保存至根結點處
if(root)
// 如果二叉樹存在,則將新建結點與二叉樹連接起來
{
if(info
root-> left=r;
else
root-> right=r;
// 按左結點<父結點<=右結點,保存數據
}
else
// 如果根結點不存在,即二叉樹不存在,則將新建一個二叉樹
{
r->right=0;
r->left=0;軟件課程設計
2010年1月
}
return r;}
/* if = = 0 接下頁
*/
/* 判斷要插入的節點應該在當前節點的左子樹或右子樹,遞歸插入
*/ if(info < r->info)
create_btree(r,r->left,info);if(info>=r->info)
create_btree(r,r->right,info);}
/* create_btree(root,r,info)*/
/* O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ */ /* 查詢數據
*/ struct tree *search_btree(struct tree *root,char key)/* struct tree *root:要查詢的二叉樹首地址
char key:要查詢的數據
*/ {
if(!root)
// 如果二叉樹指針為空,輸出Empty btree {
printf(“Empty btreen”);
return root;
}
while(root->info!=key)
{
if(key
// 按照“左結點<父結點<=右結點”查找
root=root->left;
else
root=root->right;
if(root==0)
// 如果指針為空,則退出查找
{
printf(“Search Failuren”);
break;
} } /* while(root->info!=key)*/ if(root!=0)
// 如果二叉樹指針不為空,即查找成功給出信息,返回
printf(“Successful searchn key=%cn”,root->info);return root;} /* *search_btree(root,key)*/
/* O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ */ 光信0804廖娟
U200813197
/* 打印二叉樹
*/ void print_btree(struct tree *r,int l)/* struct tree *r:二叉樹首地址
int l:當前結點的高度,根結點為0
輸出的二叉樹為正常樹逆旋轉90°后成鏡像的結果
*/ {
int i;if(r == 0)
return;
//如果傳入指針為0,則返回
print_btree(r->left,l+1);
//打印左結點
for(i=0;i printf(“ ”); //打印空格,用來排版控制格式 printf(“%cn”,r->info); //打印根結點 print_btree(r->right,l+1); //打印右結點 } /* *print_btree(root,0) */ 軟件課程設計 2010年1月 廖娟#軟件課程設計.cpp #include */ #include /* 定義二叉樹結構 */ struct tree { char info; // 定義char型變量,存放數據 struct tree *left,*right; // 左子樹指針,右子樹指針 };/* 定義結構指針變量,作用創建二叉樹 */ struct tree *create_btree(struct tree *root,struct tree *r,char info);/* 定義結構指針變量,作用查詢數據 */ struct tree *search_btree(struct tree *root,char key);/* 定義子函數,作用打印二叉樹 */ void print_btree(struct tree *r,int l);/* 定義子函數,作用先序遍歷 */ void PreorderTraversal(struct tree *root);/* 定義子函數,作用中序遍歷 */ void InorderTraversal(struct tree *root);/* 定義子函數,作用后序遍歷 */ void PostorderTraversal(struct tree *root); /* O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ */ /* 主函數 */ void main(){ char s[100],c; int n;struct tree *root=0; // 定義結構指針根結點,初始化為0 printf(“ ###”);printf(“## ##”);printf(“## 軟件課程設計: 二叉樹的查找 ##”);printf(“## ##”);printf(“## 班 級: 光 信0 8 0 4 ##”);光信0804廖娟 U200813197 printf(“## ##”);printf(“## 姓 名: 廖 娟 ##”);printf(“## ##”);printf(“## 學 號: U 2 0 0 8 1 3 1 9 7 ##”);printf(“## ##”);printf(“ ###”);printf(“n”);printf(“ 程 序 運 行 開 始 啦!!nn”); /* 讀入二叉樹的各個結點的值,并將其插入到二叉樹中 */ do { printf(“ 請 輸 入 一 個 字 符:”); gets(s); // 數據輸入過程 printf(“n”); if(!root) root=create_btree(root,root,*s); // 如果二叉樹還未建立,則建立根結點并保存數據 else create_btree(root,root,*s); // 如果二叉樹已建立,則建立新的子樹 } while(*s); // 直到s字符串為空,停止輸入 printf(“ 打 印 的 二 叉 樹 如 下:n”);print_btree(root,0); printf(“ ###”); printf(“## ##”); printf(“## ★★★★★★★★★ 請輸入您想要執行的操作!: ★★★★★★★★★ ##”); printf(“## ##”); printf(“## 選擇1—————————————進行先序遍歷 ##”); printf(“## ##”);軟件課程設計 2010年1月 printf(“## 選擇2—————————————進行中序遍歷 ##”); printf(“## ##”); printf(“## 選擇3—————————————進行后序遍歷 ##”); printf(“## ##”); printf(“## 選擇4—————————————進行查詢結點 ##”); printf(“## ##”); printf(“## 選擇5—————————————進行退出操作 ##”); printf(“## ##”); printf(“## ★★★★★★★★★ 溫馨提示:請選擇數字鍵0~5 ★★★★★★★★★ ##”); printf(“## ##”); printf(“ ###”);while(1){ scanf(“%d”,&n); switch(n) { case 1: printf(“ 先 序 遍 歷 為:n”); PreorderTraversal(root); printf(“nn”); break; case 2: printf(“ 中 序 遍 歷 為:n”); InorderTraversal(root); printf(“nn”); break; case 3: printf(“ 后 序 遍 歷 為:n”); PostorderTraversal(root); printf(“nn”); break; case 4: 光信0804廖娟 U200813197 printf(“ 請 輸 入 您 要 查 詢 的 結 點:n”); scanf(“%s”,&c); printf(“ 您 要 查 詢 的 結 點 為:n”); root=search_btree(root,c); printf(“n”); break; case 5: printf(“ 光 信 0 8 0 4 ———— 廖 娟nn”); printf(“ 0 1 0 年 1 月nn”); return; default: printf(“ 您 的 輸 入 有 誤,請 重 新 輸 入!!n”); break; } } } /* Btree.C 結束 */ /* O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ */ struct tree *create_btree(struct tree *root,struct tree *r,char info)/* struct tree *root:根結點 struct tree *r:要增加的結點 char info:要保存的數據 */ { if(r==0) // 如果當前位置無結點,則將新結點插入此處 { r=new(struct tree); // same as function: malloc(sizeof()) if(r == 0) { printf(“ Out of memoryn”); return 0; } r->left= 0; r->right=0; r->info=info; // root為空,則插入后保存至根結點處 if(root) // 如果二叉樹存在,則將新建結點與二叉樹連接起來 軟件課程設計 2010年1月 { if(info root-> left=r; else root-> right=r; // 按左結點<父結點<=右結點,保存數據 } else // 如果根結點不存在,即二叉樹不存在,則將新建一個二叉樹 { r->right=0; r->left=0; } return r;} /* if = = 0 接下頁 */ /* 判斷要插入的節點應該在當前節點的左子樹或右子樹,遞歸插入 */ if(info < r->info) create_btree(r,r->left,info);if(info>=r->info) create_btree(r,r->right,info);} /* *create_btree(root,r,info)*/ /* O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ */ /* 查詢數據 */ struct tree *search_btree(struct tree *root,char key)/* struct tree *root:要查詢的二叉樹首地址 char key:要查詢的數據 */ { tree *t;t=root;if(!t) // 如果二叉樹指針為空,輸出Empty btree { printf(“ Empty btree!!n”); return root; } while(t->info!=key) { if(key // 按照“左結點<父結點<=右結點”查找 t=t->left; else t=t->right; if(t==0) // 如果指針為空,則退出查找 光信0804廖娟 U200813197 { printf(“ Search Failure!!n”); break; } } /* while(root->info!=key)*/ if(t!=0) // 如果二叉樹指針不為空,即查找成功給出信息,返回 printf(“ Successful search!!n key=%cn”,t->info);return root;} /* *search_btree(root,key)*/ /* O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ */ /* 打印二叉樹 */ void print_btree(struct tree *r,int l)/* struct tree *r:二叉樹首地址 int l:當前結點的高度,根結點為0 輸出的二叉樹為正常樹逆旋轉90°后成鏡像的結果 */ { int i;if(r == 0) return; //如果傳入指針為0,則返回 print_btree(r->left,l+1); //打印左結點 for(i=0;i printf(“ ”); //打印空格,用來排版控制格式 printf(“%cn”,r->info); //打印根結點 print_btree(r->right,l+1); //打印右結點 } /* *print_btree(root,0) */ /* O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ */ /* 先序遍歷 */ void PreorderTraversal(struct tree *root){ if(root==0) return;printf(“%c”,root->info);PreorderTraversal(root->left);PreorderTraversal(root->right);} 軟件課程設計 2010年1月 /* O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ */ /* 中序遍歷 */ void InorderTraversal(struct tree *root){ if(!root) return;InorderTraversal(root->left);printf(“%c”,root->info);InorderTraversal(root->right);} /* O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ O(∩_∩)O~ */ /* 后序遍歷 */ void PostorderTraversal(struct tree *root){ if(!root) return;PostorderTraversal(root->left);PostorderTraversal(root->right);printf(“%c”,root->info);} 參考文獻 《數據結構》(c語言版)嚴蔚敏 吳偉民 編著 清華大學出版社 《C語言程序設計》 譚浩強 編著 清華大學出版社 《C程序上機指導》 譚浩強 編著 清華大學出版社 《標準c語言程序設計及應用》 周純杰 編著 華中科技大學出版社 對材料成形及控制工程專業的認識2011年10月份,經過為期4周的新生研討課的學習,我對材料成形及控制工程專業有了更深的了解和認識。我漸漸了解了專業的信息、發展以及我們的課程、學習內容和培養要求。 關于專業 材料成型及控制工程專業說白了就是研究通過熱加工改變材料的微觀結構、宏觀性能和表面形狀,研究熱加工過程中的相關工藝因素對材料的影響,解決成型工藝開發、成型設備、工藝優化的理論和方法;研究模具設計理論及方法,研究模具制造中的材料、熱處理、加工方法等問題。在我們重大,材料成形及控制工程專業歷史悠久,它始于1960年,其中鑄造、鍛壓、焊接是專業的主要學科。最開始材控專業屬于機械學院,后被編入材料學院。 關于發展 從中國現在的國情來看,我們的學科完全可以說是國民經濟發展的支柱產業。中國的材料加工、制造技術目前還處于一個未成熟階段,我們學習的這個專業在未來的發展還是很有前途的。從專業的學習內容來看,這個專業是一個具有典型材料學科特征的機械類 學科,機械學科和材料學科的基礎知識構成了學科的基本知識體系,因此我們以后會走向厚基礎、寬專業的模式。而且,從開設材料成形及控制工程專業的高校數量來看,專業在未來很長的一段時間內也是一個熱門專業。 課程及內容 在學習高等數學、大學物理、大學英語、計算機技術基礎等基礎課程的基礎上,我們主要學習機械制圖、工程力學、機械設計基礎、金屬學與熱處理原理、材料分析測試技術、材料性能學、工程材料學、表面工程學、焊接冶金學、金屬材料焊接、焊接方法與焊接設備、焊接檢驗、焊接結構失效分析及質量控制、塑性成型理論、橡塑材料成型工藝學、橡塑成型模具、金屬沖壓工藝與模具設計、模具CAD/CAM、模具制造技術等專業基礎和專業課程知識。我們在加強專業基礎課的同時,更需要加大專業選修課和實驗課的比例,讓自己具有扎實寬廣的專業理論知識和較強的專業技能,而成為一個高技術人員。 關于培養 我們需要學習材料科學與工程的理論基礎、材料成型加工及其控制工程、材料成型及控制工程設計制造等專業知識,能在機械、模具、材料成型加工等領 域從事科學研究、應用開發、工藝與設備的設計、生產及經營管理等方面工作。專業有三個方向: (一)焊接:培養能適應社會需求,掌握焊接成型的基礎理論、金屬材料的焊接、焊接檢驗、焊接方法及設備、焊接生產管理等全面知識的高級技術人才。 (二)鑄造: 這是目前社會最需要人才的專業之一。主要有砂型鑄造、壓力鑄造、精密鑄造、金屬型鑄造、低壓鑄造、擠壓鑄造等專業技術及專業內新技術發展方向。 (三)鍛壓:鍛造和沖壓的合稱,目前在社會上也相當的緊俏,其專業人才往往受各用人單位青睞。 關于能力 我們主要學習材料科學及各類熱加工工藝的基礎理論與技術和有關設備的設計方法等相關書籍,進行現代機械工程師的基本訓練,培養從事各類熱加工工藝設備設計、生產組織管理的基本能力。同時,作為二十一世紀的新青年,我們也必須具備專業以外的其他能力。當我們畢業時應學到以下幾方面的知識和能力:1.具有較扎實的自然科學基礎,較好的人文、藝術和社會科學基礎及正確運用本國語言、文字的表達能力,這點從謝老師經歷中我知道確實很重要;2.較系統地掌握本專業領域寬廣的技術理論基礎知識,主要包括力學、機械學、電工與電子技術、熱加工工 藝基礎、自動化基礎、市場經濟及企業管理等基礎知識; 3.具有本專業必需的制圖、計算、測試、文獻檢索和基本工藝操作等基本技能及較強的計算機和外語應用能力;4.具有本專業領域內某個專業方向所必需的專業知識,了解科學前沿及發展趨勢;5.具有較強的自學能力、創新意識和較高的綜合素質。而且,我最佩服的是謝老師每年都有發明并且獲得專利;感觸最深的是他說的將不同學科知識綜合應用,往往能創造新的東西這一道理。 關于就業 我們的專業是具有工學學士、工學碩士和工學博士學位的授予權,可以選擇進一步深造。畢業后我們可以到機械制造業、汽車及船舶制造業、金屬及橡塑材料加工業等領域從事與焊接材料成型、模具設計與制造等相關的生產過程控制、技術開發、科學研究、經營管理、貿易營銷等方面的工作。而重大的材控人才一直以來備受用人單位歡迎就業率原則上來說可以算百分之百,當然除了繼續深造的,也以百分之九十五以上的就業率排在學校各專業前茅。重大的材控人為整個西南地區乃至全國的重工業作出了巨大貢獻。而如今重大的材控還在不斷的發展與進步,相信在不久的將來,重大的材控會更加的強,更加的有競爭力! 同時我們也更有信心和激情完成本專業的學習,并立志為祖國的現代化建設貢獻自己的力量!第五篇:對材料成形及控制工程專業的認識