chap 1-3-1大節課-從C到 C++-數技_第1頁
chap 1-3-1大節課-從C到 C++-數技_第2頁
chap 1-3-1大節課-從C到 C++-數技_第3頁
chap 1-3-1大節課-從C到 C++-數技_第4頁
chap 1-3-1大節課-從C到 C++-數技_第5頁
已閱讀5頁,還剩45頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

程序設計語言A袁小hyuan@1計算機程序的用途1)信息管理學生學籍管理系統2)業務處理學生選課系統,電子商務,網上購物3)科學計算氣象預報,分子計算…2運用計算機解決問題的步驟

(1)分析問題:問題是什么---專業知識,數學、物理、生物(2)問題建模:模塊的輸入、輸出、功能---軟件工程(3)數據結構與算法:數據結構設計、算法設計—數據結構(4)編程實現:計算機語言,編程方法---程序語言C++1)C++主要用于開發大型工具軟件開發平臺NokiaQt,VisualStudio和VC++;桌面工具Office,Photoshop,K3DSurf和Matlab;數據庫系統SqlServer;網絡軟件IE和Google搜索引擎;C++小游戲GDI動畫行業應用軟件“臨港城市風暴潮災害3維展示系統”3為什么學習C++海水入侵的3維可視化展示臨港新城風暴潮三維水淹分析

(1)程序設計語言A(C++)C++語法面向對象的程序設計方法(2)數據結構(3)算法分析與設計2)為后續計算機課程建立編程基礎目的:編程工具編程能力3為什么學習C++4C++學習以學習C++語法為基礎以學習面向對象的程序設計方法為目的在其中:培養基本的面向對象編程能力為數據結構、算法分析與設計等后續課程建立語言與編程基礎1)任務2)教材和參考書教材:

劉懷亮

.C++語言程序設計

,研究出版社,參考書:錢能,C++程序設計教程

,清華大學出版社,2005年第2版朱振元,朱承.C++程序設計與應用開發.清華大學出版社,2005年2月鄭莉.C++語言程序設計.清華大學出版社,2005年6月(第3版)鄭莉.C++語言程序設計案例教程.清華大學出版社,2005年7月3)教學方式課堂教學

共24次左右大課上機實習

16次,

A2054)考核方式期末閉卷考試:60%平??记冢?4%平常作業:10%上機實習:16%5)教學內容第1-5章

C++語言基礎第6-9,11章

面向對象程序設計基礎第10和12章

C++語言擴展—自學6)學習方法—重要牢記:在寫程序中學習編程Programmingislearnedbywritingprograms.必須要讀、寫大量的程序,否則學不會編程序.內容計算機程序的基本概念程序設計方法簡介C++程序的結構C++編程工具介紹

第1章從C到C++1)計算機語言,程序設計語言

(1)是人與計算機進行信息交流使用的語言;是具有語法、詞法規則的一套系統。

(2)相比于人類自然語言,計算機語言更加要求規則和嚴密。

(3)由計算機專家研制,主要由編程人員使用。

因用于編寫程序,又叫程序設計語言。

1

計算機程序的基本概念

類似操作規程,電話機故障排除說明2)計算機程序

采用計算機語言編寫的,能連續執行的一條條指令的集合,稱為計算機的程序。清楚地告訴計算機:該作什么,該怎么做3)計算機語言介紹機器語言匯編語言面向過程語言類面向對象語言類低級語言高級語言面向方面語言類是計算機語言的發展,

推動了計算機科學的發展

A

機器語言(MachineLanguage)第1代語言二進制數來表達計算機操作指令。

比如“加”動作的表示要用:00101000“減”動作的表示要用:10011000優點:

特定型號計算機;占用內存少;運算效率高。

不足:

編寫和修改困難;同一程序,在另外的機器上運行,需重新編程。

操作碼

操作數(地址碼)(1)低級語言B匯編語言,AssembleLanguag,第2代語言

用助記符號,表達機器指令。比如:

加:ADD

減:SUB

傳數據:MOV特點:效率高;

使用依舊復雜

是一類獨立于機器的語言,表達式接近于自然語言和數學表達式,

具有一定的語法規則。

特點:占內存多;

執行比低級語言慢;

容易編寫代碼。

(2)高級語言(2)高級語言面向過程的語言,第3代

特點:

完全符號化:

完全是對處理過程和計算過程的描述。包括:

BASIC、FORTRAN、COBOL、C、Pascal面向對象的語言,第4代特點:將數據和處理數據的過程封裝為類,用類的實例對象解決具體問題。

包括:

C++,C#,Java

4)關于計算機程序類型(1)源程序,sourceprogram匯編語言和高級語言編寫的程序。(2)目標代碼,objectprogram計算機能直接理解和執行的程序翻譯(3)翻譯程序,Trasnslator

將源程序翻譯成目標代碼的工具。包括3種:a匯編程序,

Assembler

將匯編語言的源程序翻譯成目標代碼(.bin,.exe)

b編譯器,Compiler

將高級語言的源程序翻譯成目標代碼(.bin,.exe)

c解釋器,Interpreter

,Java虛擬機將源程序翻譯成機器指令,邊翻譯邊執行,無目標代碼。5)對一般計算機使用人員使用程序

2)編寫程序問題背景(專業知識,數學,物理,工程…)學會當前通用的語言(C,C++,Java,C#)和程序設計方法設計算法(C,C++,數據結構,算法分析與設計)編寫源程序使用翻譯程序…程序設計方法

--對數據與操作的處理方法程序處理的對象,是輸入給計算機程序的信息,以及程序處理后輸出的結果.

如:計算器中的輸入;

…Google中的輸入操作是對數據的處理和運算1)程序設計方法程序設計時所遵循的原理和方法2)程序設計方法種類及演變公式翻譯,邏輯式,函數式的程序設計:不用面向過程的程序設計:C,Basic,Forturn,還有在用面向對象的程序設計:C++,C#,Java,普遍面向方面的程序設計…正在研究中木材鋼材水泥木工機械金屬加工機床攪拌機械組合和分類前的建筑工地

(3)面向過程的程序設計數據1操作1數據2操作2數據操作數據3數據n……操作3……操作n類似,面向過程程序設計中,數據與操作分離程序=數據+操作面向過程的程序設計的優缺點

優點:

過程清晰明了

不足:

數據遺漏或多余;

操作遺漏或重復;

可能產生對數據的不安全操作組合和分類后的建筑工地木材鋼材水泥木工機械金屬加工機床攪拌機械木工車間金工車間瓦工車間(4)面向對象的程序設計數據1操作1數據2操作2數據3數據n……操作3操作n對象1對象2對象3對象n組合后的程序=對象1+對象2+,…,+對象n定義類面向對象的程序設計優點:抽象和封裝,使數據安全了;繼承,多態,節約了代碼編寫,并靈活處理

不足:

在代碼中存在多重貫穿性,

容易產生代碼交織和代碼散落代表語言:C++Java,C#,…軟件工程程序設計是構件(單文件或聯編文件)的設計軟件工程構件層次和調用關系;數據庫設計硬件選型和布局。程序設計是軟件工程實現的基礎3)C++語言簡介(1)以C為基礎,在C基礎上有兩個擴展1972年,貝爾實驗室寫出C語言.C的優點C語言比低級語言好用,編寫代碼的效率高;C語言能直接訪址,執行效率其他高級語言快.成功的例子:1973年貝爾實驗室用C編寫了Unix.C的不足:類型檢查機制弱;--C++用異常處理解決不支持代碼重用,不適合編寫大型軟件—C++用類解決C++與C比較,優勢在于

(1)更好編寫(開發效率高)--類的重用;(2)更好維護—可處理異常。Bjarne

Stroustrup(1950~)(2)C++與Java和C#的比較優點:源于C,更接近于底層,執行效率最高;適合開發大型軟件不足:相對復雜。(3)C#和Java

C#適合與圖形界面開發,小型網絡開發;

Java適合大型網絡開發(跨平臺,安全)每個C++/c程序通常分為2個文件:頭文件,后綴為.h;不包含主函數用于各種函數和類型的聲明與定義定義文件,后綴為.c,.cpp,.cc,.cxx用于定義可執行程序指令;同一項目中,僅有一個定義文件能包含主函數

4)C++程序的組成與結構簡單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擴展的示例//第4頁上的部分定義了一個CircleArea類//第5頁上定義了主函數/*這是版本0.1*程序文件結構介紹,功能介紹…**作者:公司*/#include<iostream.h>voidmain()

//包含主函數{cout<<″Hello!″;

//在顯示器上輸出字符串Hello!}【例1-4】C++程序文件的例子版本聲明部分預處理部分函數定義C++程序的結構/*這是我們的第n個C++程序*,輸入任意三個整數輸出其中的最大值*/#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;}①注釋區②

預處理與全局說明③函數定義區④主函數區C++程序的結構/*這是版本0.1*頭文件結構介紹,功能介紹…**作者:公司*///模塊1和3有待完善#include<iostream.h>…聲明變量;聲明結構,枚舉,聯合;聲明類和類的成員函數;函數定義1(){;;;}函數定義2(){;;;}頭文件(不包括主函數)①注釋部分②預處理部分③函數定義區/*這是版本0.1*頭文件結構介紹,功能介紹…**作者:學生1*/#include<iostream.h>classStudent

//定義類{Private:char*stu_name;intStu_number;Public:Student(char*snm,intsnum);//構造函數};【例1-0】頭文件例子版本聲明部分預處理部分函數和類結構聲明部分頭文件(不包括主函數)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++的程序開發工具

集成開發環境(IDE)包括編輯、編譯、連接、調試和管理等多個功能。TC3,BorlandCbuilder,GNUC/C++,VC++

,MicrosoftVisualStudio.Net

選擇使用.net:與微軟操作系統更好地連接

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論