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