版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
程序設(shè)計語言A袁小hyuan@1計算機(jī)程序的用途1)信息管理學(xué)生學(xué)籍管理系統(tǒng)2)業(yè)務(wù)處理學(xué)生選課系統(tǒng),電子商務(wù),網(wǎng)上購物3)科學(xué)計算氣象預(yù)報,分子計算…2運用計算機(jī)解決問題的步驟
(1)分析問題:問題是什么---專業(yè)知識,數(shù)學(xué)、物理、生物(2)問題建模:模塊的輸入、輸出、功能---軟件工程(3)數(shù)據(jù)結(jié)構(gòu)與算法:數(shù)據(jù)結(jié)構(gòu)設(shè)計、算法設(shè)計—數(shù)據(jù)結(jié)構(gòu)(4)編程實現(xiàn):計算機(jī)語言,編程方法---程序語言C++1)C++主要用于開發(fā)大型工具軟件開發(fā)平臺NokiaQt,VisualStudio和VC++;桌面工具Office,Photoshop,K3DSurf和Matlab;數(shù)據(jù)庫系統(tǒng)SqlServer;網(wǎng)絡(luò)軟件IE和Google搜索引擎;C++小游戲GDI動畫行業(yè)應(yīng)用軟件“臨港城市風(fēng)暴潮災(zāi)害3維展示系統(tǒng)”3為什么學(xué)習(xí)C++海水入侵的3維可視化展示臨港新城風(fēng)暴潮三維水淹分析
(1)程序設(shè)計語言A(C++)C++語法面向?qū)ο蟮某绦蛟O(shè)計方法(2)數(shù)據(jù)結(jié)構(gòu)(3)算法分析與設(shè)計2)為后續(xù)計算機(jī)課程建立編程基礎(chǔ)目的:編程工具編程能力3為什么學(xué)習(xí)C++4C++學(xué)習(xí)以學(xué)習(xí)C++語法為基礎(chǔ)以學(xué)習(xí)面向?qū)ο蟮某绦蛟O(shè)計方法為目的在其中:培養(yǎng)基本的面向?qū)ο缶幊棠芰閿?shù)據(jù)結(jié)構(gòu)、算法分析與設(shè)計等后續(xù)課程建立語言與編程基礎(chǔ)1)任務(wù)2)教材和參考書教材:
劉懷亮
.C++語言程序設(shè)計
,研究出版社,參考書:錢能,C++程序設(shè)計教程
,清華大學(xué)出版社,2005年第2版朱振元,朱承.C++程序設(shè)計與應(yīng)用開發(fā).清華大學(xué)出版社,2005年2月鄭莉.C++語言程序設(shè)計.清華大學(xué)出版社,2005年6月(第3版)鄭莉.C++語言程序設(shè)計案例教程.清華大學(xué)出版社,2005年7月3)教學(xué)方式課堂教學(xué)
共24次左右大課上機(jī)實習(xí)
16次,
A2054)考核方式期末閉卷考試:60%平??记冢?4%平常作業(yè):10%上機(jī)實習(xí):16%5)教學(xué)內(nèi)容第1-5章
C++語言基礎(chǔ)第6-9,11章
面向?qū)ο蟪绦蛟O(shè)計基礎(chǔ)第10和12章
C++語言擴(kuò)展—自學(xué)6)學(xué)習(xí)方法—重要牢記:在寫程序中學(xué)習(xí)編程Programmingislearnedbywritingprograms.必須要讀、寫大量的程序,否則學(xué)不會編程序.內(nèi)容計算機(jī)程序的基本概念程序設(shè)計方法簡介C++程序的結(jié)構(gòu)C++編程工具介紹
第1章從C到C++1)計算機(jī)語言,程序設(shè)計語言
(1)是人與計算機(jī)進(jìn)行信息交流使用的語言;是具有語法、詞法規(guī)則的一套系統(tǒng)。
(2)相比于人類自然語言,計算機(jī)語言更加要求規(guī)則和嚴(yán)密。
(3)由計算機(jī)專家研制,主要由編程人員使用。
因用于編寫程序,又叫程序設(shè)計語言。
1
計算機(jī)程序的基本概念
類似操作規(guī)程,電話機(jī)故障排除說明2)計算機(jī)程序
采用計算機(jī)語言編寫的,能連續(xù)執(zhí)行的一條條指令的集合,稱為計算機(jī)的程序。清楚地告訴計算機(jī):該作什么,該怎么做3)計算機(jī)語言介紹機(jī)器語言匯編語言面向過程語言類面向?qū)ο笳Z言類低級語言高級語言面向方面語言類是計算機(jī)語言的發(fā)展,
推動了計算機(jī)科學(xué)的發(fā)展
A
機(jī)器語言(MachineLanguage)第1代語言二進(jìn)制數(shù)來表達(dá)計算機(jī)操作指令。
比如“加”動作的表示要用:00101000“減”動作的表示要用:10011000優(yōu)點:
特定型號計算機(jī);占用內(nèi)存少;運算效率高。
不足:
編寫和修改困難;同一程序,在另外的機(jī)器上運行,需重新編程。
操作碼
操作數(shù)(地址碼)(1)低級語言B匯編語言,AssembleLanguag,第2代語言
用助記符號,表達(dá)機(jī)器指令。比如:
加:ADD
減:SUB
傳數(shù)據(jù):MOV特點:效率高;
使用依舊復(fù)雜
是一類獨立于機(jī)器的語言,表達(dá)式接近于自然語言和數(shù)學(xué)表達(dá)式,
具有一定的語法規(guī)則。
特點:占內(nèi)存多;
執(zhí)行比低級語言慢;
容易編寫代碼。
(2)高級語言(2)高級語言面向過程的語言,第3代
特點:
完全符號化:
完全是對處理過程和計算過程的描述。包括:
BASIC、FORTRAN、COBOL、C、Pascal面向?qū)ο蟮恼Z言,第4代特點:將數(shù)據(jù)和處理數(shù)據(jù)的過程封裝為類,用類的實例對象解決具體問題。
包括:
C++,C#,Java
4)關(guān)于計算機(jī)程序類型(1)源程序,sourceprogram匯編語言和高級語言編寫的程序。(2)目標(biāo)代碼,objectprogram計算機(jī)能直接理解和執(zhí)行的程序翻譯(3)翻譯程序,Trasnslator
將源程序翻譯成目標(biāo)代碼的工具。包括3種:a匯編程序,
Assembler
將匯編語言的源程序翻譯成目標(biāo)代碼(.bin,.exe)
b編譯器,Compiler
將高級語言的源程序翻譯成目標(biāo)代碼(.bin,.exe)
c解釋器,Interpreter
,Java虛擬機(jī)將源程序翻譯成機(jī)器指令,邊翻譯邊執(zhí)行,無目標(biāo)代碼。5)對一般計算機(jī)使用人員使用程序
2)編寫程序問題背景(專業(yè)知識,數(shù)學(xué),物理,工程…)學(xué)會當(dāng)前通用的語言(C,C++,Java,C#)和程序設(shè)計方法設(shè)計算法(C,C++,數(shù)據(jù)結(jié)構(gòu),算法分析與設(shè)計)編寫源程序使用翻譯程序…程序設(shè)計方法
--對數(shù)據(jù)與操作的處理方法程序處理的對象,是輸入給計算機(jī)程序的信息,以及程序處理后輸出的結(jié)果.
如:計算器中的輸入;
…Google中的輸入操作是對數(shù)據(jù)的處理和運算1)程序設(shè)計方法程序設(shè)計時所遵循的原理和方法2)程序設(shè)計方法種類及演變公式翻譯,邏輯式,函數(shù)式的程序設(shè)計:不用面向過程的程序設(shè)計:C,Basic,Forturn,還有在用面向?qū)ο蟮某绦蛟O(shè)計:C++,C#,Java,普遍面向方面的程序設(shè)計…正在研究中木材鋼材水泥木工機(jī)械金屬加工機(jī)床攪拌機(jī)械組合和分類前的建筑工地
(3)面向過程的程序設(shè)計數(shù)據(jù)1操作1數(shù)據(jù)2操作2數(shù)據(jù)操作數(shù)據(jù)3數(shù)據(jù)n……操作3……操作n類似,面向過程程序設(shè)計中,數(shù)據(jù)與操作分離程序=數(shù)據(jù)+操作面向過程的程序設(shè)計的優(yōu)缺點
優(yōu)點:
過程清晰明了
不足:
數(shù)據(jù)遺漏或多余;
操作遺漏或重復(fù);
可能產(chǎn)生對數(shù)據(jù)的不安全操作組合和分類后的建筑工地木材鋼材水泥木工機(jī)械金屬加工機(jī)床攪拌機(jī)械木工車間金工車間瓦工車間(4)面向?qū)ο蟮某绦蛟O(shè)計數(shù)據(jù)1操作1數(shù)據(jù)2操作2數(shù)據(jù)3數(shù)據(jù)n……操作3操作n對象1對象2對象3對象n組合后的程序=對象1+對象2+,…,+對象n定義類面向?qū)ο蟮某绦蛟O(shè)計優(yōu)點:抽象和封裝,使數(shù)據(jù)安全了;繼承,多態(tài),節(jié)約了代碼編寫,并靈活處理
不足:
在代碼中存在多重貫穿性,
容易產(chǎn)生代碼交織和代碼散落代表語言:C++Java,C#,…軟件工程程序設(shè)計是構(gòu)件(單文件或聯(lián)編文件)的設(shè)計軟件工程構(gòu)件層次和調(diào)用關(guān)系;數(shù)據(jù)庫設(shè)計硬件選型和布局。程序設(shè)計是軟件工程實現(xiàn)的基礎(chǔ)3)C++語言簡介(1)以C為基礎(chǔ),在C基礎(chǔ)上有兩個擴(kuò)展1972年,貝爾實驗室寫出C語言.C的優(yōu)點C語言比低級語言好用,編寫代碼的效率高;C語言能直接訪址,執(zhí)行效率其他高級語言快.成功的例子:1973年貝爾實驗室用C編寫了Unix.C的不足:類型檢查機(jī)制弱;--C++用異常處理解決不支持代碼重用,不適合編寫大型軟件—C++用類解決C++與C比較,優(yōu)勢在于
(1)更好編寫(開發(fā)效率高)--類的重用;(2)更好維護(hù)—可處理異常。Bjarne
Stroustrup(1950~)(2)C++與Java和C#的比較優(yōu)點:源于C,更接近于底層,執(zhí)行效率最高;適合開發(fā)大型軟件不足:相對復(fù)雜。(3)C#和Java
C#適合與圖形界面開發(fā),小型網(wǎng)絡(luò)開發(fā);
Java適合大型網(wǎng)絡(luò)開發(fā)(跨平臺,安全)每個C++/c程序通常分為2個文件:頭文件,后綴為.h;不包含主函數(shù)用于各種函數(shù)和類型的聲明與定義定義文件,后綴為.c,.cpp,.cc,.cxx用于定義可執(zhí)行程序指令;同一項目中,僅有一個定義文件能包含主函數(shù)
4)C++程序的組成與結(jié)構(gòu)簡單C++例子//問題:使用面向過程的C++語言。//源程序
1_2.cpp#include<iostream.h>intmain(){
cout<<"WelcometotheC++languageworld"<<endl; return0;}//問題:使用面向過程的C++語言。//源程序1_2.cpp#include<iostream>usingnamespacestd;intmain(){cout<<"WelcometoC++languageworld!";return0;}//示例1-3,C++是C擴(kuò)展的示例//第4頁上的部分定義了一個CircleArea類//第5頁上定義了主函數(shù)/*這是版本0.1*程序文件結(jié)構(gòu)介紹,功能介紹…**作者:公司*/#include<iostream.h>voidmain()
//包含主函數(shù){cout<<″Hello!″;
//在顯示器上輸出字符串Hello!}【例1-4】C++程序文件的例子版本聲明部分預(yù)處理部分函數(shù)定義C++程序的結(jié)構(gòu)/*這是我們的第n個C++程序*,輸入任意三個整數(shù)輸出其中的最大值*/#include"stdafx.h"#include<iostream>usingnamespacestd;intmax(inta,intb,intc){inttemp;
temp=a;
if(temp<b)temp=b;
if(temp<c)temp=c;
returntemp;}intmain(){inta,b,c;
cin>>a>>b>>c;
cout<<"max="<<max(a,b,c)<<endl;}①注釋區(qū)②
預(yù)處理與全局說明③函數(shù)定義區(qū)④主函數(shù)區(qū)C++程序的結(jié)構(gòu)/*這是版本0.1*頭文件結(jié)構(gòu)介紹,功能介紹…**作者:公司*///模塊1和3有待完善#include<iostream.h>…聲明變量;聲明結(jié)構(gòu),枚舉,聯(lián)合;聲明類和類的成員函數(shù);函數(shù)定義1(){;;;}函數(shù)定義2(){;;;}頭文件(不包括主函數(shù))①注釋部分②預(yù)處理部分③函數(shù)定義區(qū)/*這是版本0.1*頭文件結(jié)構(gòu)介紹,功能介紹…**作者:學(xué)生1*/#include<iostream.h>classStudent
//定義類{Private:char*stu_name;intStu_number;Public:Student(char*snm,intsnum);//構(gòu)造函數(shù)};【例1-0】頭文件例子版本聲明部分預(yù)處理部分函數(shù)和類結(jié)構(gòu)聲明部分頭文件(不包括主函數(shù))5)基本的I/Oiostream.h
定義了兩個重要的對象cout,輸出流對象,輸出到屏幕舉例:
cout<<“hello,everybody”<<endl;cin,輸入流對象,從鍵盤讀一次輸入舉例:
intage;
cin>>age;
cout<<age;cerr,輸出錯誤信息舉例:
cerr<<“payattentionplease,thereiswrong”<<endl;//示例1_4#inlcude<iostream.h>intmain(){char*warnig;warning=newchar[100];
cout<<“pleaseinputawaring”<<endl;
cin>>varning;
cerr<<“thewarningyouinpuis:”<<warning<<endl;
retrun0;}6)C++的程序開發(fā)工具
集成開發(fā)環(huán)境(IDE)包括編輯、編譯、連接、調(diào)試和管理等多個功能。TC3,BorlandCbuilder,GNUC/C++,VC++
,MicrosoftVisualStudio.Net
選擇使用.net:與微軟操作系統(tǒng)更好地連接
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025合同違約賠償協(xié)議書10篇
- 公司股份轉(zhuǎn)讓協(xié)議書七篇
- 公司盤活閑置資產(chǎn)和清收清欠工作專題會講話
- 單位租車協(xié)議書標(biāo)準(zhǔn)范本7篇
- 自發(fā)性細(xì)菌性腹膜炎病因介紹
- (立項備案申請模板)低溫預(yù)浸纖維項目可行性研究報告參考范文
- 1.1《沁園春·長沙》【中職專用】高一語文(高教版2023基礎(chǔ)模塊上冊)
- (2024)旅游集散中心建設(shè)項目申請報告可行性研究報告(一)
- 房屋構(gòu)造識圖與建模- 趙靖 任務(wù)三 基礎(chǔ)類型與 構(gòu)61課件講解
- 2023年浸漬、涂布或包覆處理紡織物項目融資計劃書
- 語文修改語病-三年(2022-2024)高考病句試題真題分析及 備考建議(課件)
- 中國抗癌協(xié)會胰腺癌患者科普指南2024(完整版)
- 國家開放大學(xué)電大《計算機(jī)應(yīng)用基礎(chǔ)(本)》終結(jié)性考試試題答案(格式已排好)任務(wù)一
- 電子政務(wù)教案人民大學(xué)
- 最新國家電網(wǎng)公司電力安全工作規(guī)程
- (完整版)HSE管理體系及措施
- 淺談吉林省中藥材產(chǎn)業(yè)發(fā)展
- 職業(yè)生涯規(guī)劃檔案建立過程
- 圖形找規(guī)律專項練習(xí)60題(有答案)
- 小型步進(jìn)電機(jī)控制系統(tǒng)設(shè)計
- 普通發(fā)票銷售清單
評論
0/150
提交評論