版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
C++程序設(shè)計(jì)TheC++ProgrammingCollegeofComputerandInformationEngineering,TianjinNormalUniversity主講:姜麗芬1/2/2023C++程序設(shè)計(jì)TheC++Programming主課程定位《C++程序設(shè)計(jì)》是軟件學(xué)院的專業(yè)基礎(chǔ)課,是《數(shù)據(jù)結(jié)構(gòu)》、《操作系統(tǒng)》等課程的前導(dǎo)課程?!禖++程序設(shè)計(jì)》是一門實(shí)踐性很強(qiáng)的課程,《C++程序設(shè)計(jì)實(shí)驗(yàn)》被獨(dú)立設(shè)課、單獨(dú)考核。其目的在于強(qiáng)化實(shí)踐環(huán)節(jié),使大家既能掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念和方法,又學(xué)會編程調(diào)試,培養(yǎng)運(yùn)用C++解決實(shí)際問題的能力。1/2/20232課程定位《C++程序設(shè)計(jì)》是軟件學(xué)院的專業(yè)基礎(chǔ)課,是《數(shù)據(jù)結(jié)學(xué)時(shí)安排本學(xué)期6周,下學(xué)期18周。上課:4學(xué)時(shí)/周實(shí)驗(yàn):4學(xué)時(shí)/周1/2/20233學(xué)時(shí)安排本學(xué)期6周,下學(xué)期18周。12/12/2教學(xué)要求課前預(yù)習(xí)、課后復(fù)習(xí)上課、實(shí)驗(yàn)不得缺席按時(shí)完成作業(yè)1/2/20234教學(xué)要求課前預(yù)習(xí)、課后復(fù)習(xí)12/12/20224考核形式考勤、作業(yè)占總成績的30%期末考試占總成績的70%上機(jī)實(shí)驗(yàn)課單獨(dú)考核1/2/20235考核形式考勤、作業(yè)占總成績的30%12/12/20225參考書目《C++程序設(shè)計(jì)題解與上機(jī)指導(dǎo)》譚浩強(qiáng)著清華大學(xué)出版社.2008年6月《C++程序設(shè)計(jì)實(shí)踐指導(dǎo)》譚浩強(qiáng)等著清華大學(xué)出版社.2005年7月《C++語言基礎(chǔ)教程》(第二版)呂鳳翥著清華大學(xué)出版社.2007年2月C++HowtoProgram(FifthEdition),H.M.DeitelandP.J.Deitel著電子工業(yè)出版社.2008
1/2/20236參考書目《C++程序設(shè)計(jì)題解與上機(jī)指導(dǎo)》譚浩強(qiáng)著清華大學(xué)出版C++程序設(shè)計(jì)第1章C++的初步知識1/2/2023C++程序設(shè)計(jì)第1章C++的初步知識12/12/2022第1章C++的初步知識1.1從C到C++1.2最簡單的C++程序1.3C++程序的構(gòu)成和書寫形式1.4C++程序的編寫和實(shí)現(xiàn)1.5關(guān)于C++上機(jī)實(shí)踐1/2/20238第1章C++的初步知識1.1從C到C++12/11.1從C到C++1972年為移植UNIX系統(tǒng),Ritchie發(fā)明了C語言,并隨UNIX風(fēng)靡全球。利用C開發(fā)時(shí),采用的是面向過程(OPP)的方法。C語言憑借其靈活性和高效性,自80年代以來在程序設(shè)計(jì)界占領(lǐng)了廣泛的市場,程序員用它開發(fā)了許多重要產(chǎn)品。但是C語言并不是萬能的,隨著軟件工程規(guī)模的擴(kuò)大,C語言的缺陷逐漸顯露出來。比如說,程序量超過50,000行,開發(fā)人員達(dá)到數(shù)十人時(shí),系統(tǒng)維護(hù)的工作量就變得相當(dāng)大,而且系統(tǒng)的整體性也難以保證。1980年貝爾實(shí)驗(yàn)室的BjarneStroustrup對C語言進(jìn)行了擴(kuò)充,推出了“Cwithclass”,1982年,正式命名為C++。
1/2/202391.1從C到C++1972年為移植UNIX系統(tǒng),Ritc1.2最簡單的C++程序
例1.1輸出一行字符: ThisisaC++program.#include<iostream>usingnamespacestd;intmain(){cout<<"ThisisaC++program.";return0;}包含頭文件使用命名空間stdmain代表“主函數(shù)”的名字。每一個(gè)C++程序都必須有。int聲明函數(shù)的類型為整型。向操作系統(tǒng)返回零值。作用是向程序提供輸入或輸出時(shí)所需要的一些信息。C++標(biāo)準(zhǔn)庫中的類和函數(shù)是在命名空間std中聲明的因此程序中如果需要用到C++標(biāo)準(zhǔn)庫,就需要用“usingnamespacestd;”表示要用到命名空間std中的內(nèi)容。1/2/2023101.2最簡單的C++程序例1.1輸出一行字符:例1.2求a、b兩個(gè)數(shù)之和//求兩數(shù)之和#include<iostream>usingnamespacestd;intmain(){inta,b,sum;cin>>a>>b;sum=a+b;cout<<"a+b="<<sum<<endl;return0;}
//預(yù)處理命令//使用命名空間std//主函數(shù)首部//函數(shù)體開始//函數(shù)結(jié)束//定義變量//輸入語句//賦值語句//輸出語句//如程序正常結(jié)束,向操作系統(tǒng)返回一個(gè)零值如果在運(yùn)行時(shí)從鍵盤輸入123456↙則輸出為a+b=579函數(shù)體(本行是注釋行)1/2/202311例1.2求a、b兩個(gè)數(shù)之和//求兩數(shù)之和
注釋:
注釋是用來幫助閱讀、理解及維護(hù)程序。在編譯時(shí),注釋部分被忽略,不產(chǎn)生目標(biāo)代碼。C++語言提供兩種注釋方式。(1)一種是與C兼容的多行注釋,用/*和*/分界。(2)另一種是單行注釋,以“//”開頭的表明本行中用“/*……*/”作注釋時(shí)有效范圍為多行。只要在開始處有一個(gè)“/*”,在最后一行結(jié)束處有一個(gè)“*/”即可內(nèi)容較少的簡單注釋常用“//”,內(nèi)容較長的常用“/*……*/”。返回1/2/202312注釋:12/12/202212例1.3求x、y兩數(shù)中的較大者#include<iostream>usingnamespacestd;intmax(intx,inty){intz;if(x>y)z=x;elsez=y;return(z);}//變量聲明,定義本函數(shù)中用到的變量z為整型//if語句,若x>y,則將x的值賦給z//否則,將y的值賦給z//將z的值返回,通過max帶回調(diào)用處//定義max函數(shù),函數(shù)值為整型//形式參數(shù)x,y為整型1/2/202313例1.3求x、y兩數(shù)中的較大者#include<iost例1.3求x、y兩數(shù)中的較大者intmain(){ inta,b,m; cin>>a>>b; m=max(a,b); cout<<"max="<<m<<'\n'; return0;}//主函數(shù)//變量聲明//輸入變量a和b的值//調(diào)用max函數(shù),將得到的值賦給m//輸出大數(shù)m的值本程序包括兩個(gè)函數(shù):主函數(shù)main和被調(diào)用的函數(shù)max注意:輸入的兩個(gè)數(shù)據(jù)間用一個(gè)或多個(gè)空格間隔,不能以逗號或其他符號間隔。1/2/202314例1.3求x、y兩數(shù)中的較大者intmain()//主函例1.4包含類的C++程序
#include<iostream>usingnamespacestd;classStudent
{private:
//以下為類中的私有部分
intnum;
//私有變量num
doublescore;
//私有變量scorepublic: //以下為類中的公用部分
voidsetdata()
//定義公用函數(shù)
{cin>>num;cin>>score;}
//輸入num,score的值
voiddisplay()
//定義公用函數(shù)
{cout<<"num="<<num<<endl;cout<<"score="<<score<<endl;}//輸出};訪問權(quán)限私有的數(shù)據(jù)成員語句結(jié)束符類定義關(guān)鍵字公有的成員函數(shù)1/2/202315例1.4包含類的C++程序#include<ios例1.4
包含類的C++程序Studentstud1,stud2;intmain(){stud1.setdata();stud2.setdata();stud1.display();stud2.display();return0;}//定義stud1和stud2為//Student類的變量,稱為對象//調(diào)用對象stud1的setdata函數(shù)//調(diào)用對象stud2的setdata函數(shù)//調(diào)用對象stud1的display函數(shù)//調(diào)用對象stud2的display函數(shù)1/2/202316例1.4包含類的C++程序Studentstud1例1.4包含類的C++程序程序運(yùn)行情況如下:100198.5↙(輸入學(xué)生1的學(xué)號和成績)100276.5↙(輸入學(xué)生2的學(xué)號和成績)num=1001(輸出學(xué)生1的學(xué)號)score=98.5(輸出學(xué)生1的成績)num=1002(輸出學(xué)生2的學(xué)號)score=76.5(輸出學(xué)生2的成績)1/2/202317例1.4包含類的C++程序程序運(yùn)行情況如下:12/12/1.2最簡單的C++程序
1.學(xué)生入學(xué)過程程序
2.隨機(jī)挑選學(xué)生程序1/2/2023181.2最簡單的C++程序 1.學(xué)生入學(xué)過程程序12/11.3C++程序的構(gòu)成和書寫形式C++程序的結(jié)構(gòu)和書寫格式歸納如下:
1.一個(gè)C++程序可以由一個(gè)或多個(gè)程序單位構(gòu)成,每個(gè)程序單位作為一個(gè)文件。在程序編譯時(shí),編譯系統(tǒng)分別對各個(gè)文件進(jìn)行編譯,因此,一個(gè)文件是一個(gè)編譯單元。1/2/2023191.3C++程序的構(gòu)成和書寫形式C++程序的結(jié)構(gòu)和書寫格式1.3C++程序的構(gòu)成和書寫形式2.在一個(gè)程序單位中,可以包括以下幾個(gè)部分:
⑴預(yù)處理命令
預(yù)處理命令以位于行首的符號“#”開始,C++提供的預(yù)處理有宏定義命令、文件包含命令和條件編譯命令三種。⑵全局聲明部分
在這部分中包括對用戶自己定義的數(shù)據(jù)類型的聲明和程序中所用到的變量的定義。1/2/2023201.3C++程序的構(gòu)成和書寫形式2.在一個(gè)程序單位中,可以1.3C++程序的構(gòu)成和書寫形式⑶函數(shù) 一個(gè)C++程序是由若干個(gè)函數(shù)構(gòu)成的。函數(shù)分為庫函數(shù)(標(biāo)準(zhǔn)函數(shù))和自定義函數(shù)。庫函數(shù)一般是由系統(tǒng)提供的。一個(gè)完整的C++語言程序有且只有一個(gè)主函數(shù)。定義一個(gè)函數(shù)的語法格式為: 類型函數(shù)名(形式參數(shù)表) { 函數(shù)體; }1/2/2023211.3C++程序的構(gòu)成和書寫形式⑶函數(shù)定義一個(gè)函數(shù)的例如:intmax(inta,intb){intt;if(a>b)t=a;elset=b;returnt;}函數(shù)體函數(shù)首部函數(shù)名函數(shù)類型函數(shù)形參聲明語句執(zhí)行語句一個(gè)C++程序總是從main函數(shù)開始執(zhí)行的,而不論main函數(shù)在整個(gè)程序中的位置如何。1/2/202322例如:函數(shù)體函數(shù)首部函數(shù)名函數(shù)類型函數(shù)形參聲明語句執(zhí)行語句一
一個(gè)函數(shù)由兩部分組成:①函數(shù)首部,即函數(shù)的第一行。包括函數(shù)名、函數(shù)類型、函數(shù)參數(shù)(形參)名、參數(shù)類型。一個(gè)函數(shù)名后面必須跟一對圓括號,函數(shù)參數(shù)可以缺省,如intmain()。1/2/202323 一個(gè)函數(shù)由兩部分組成:12/12/202223
②函數(shù)體,即函數(shù)首部下面的大括號內(nèi)的部分。函數(shù)體一般包括:局部聲明部分(在函數(shù)內(nèi)的聲明部分)。包括對本函數(shù)中所用到的類型、函數(shù)的聲明和變量的定義。對數(shù)據(jù)的聲明既可以放在函數(shù)之外(其作用范圍是全局的),也可以放在函數(shù)內(nèi)(其作用范圍是局部的,只在本函數(shù)內(nèi)有效)。執(zhí)行部分。由若干個(gè)執(zhí)行語句組成,用來進(jìn)行有關(guān)的操作,以實(shí)現(xiàn)函數(shù)的功能。1/2/202324 ②函數(shù)體,即函數(shù)首部下面的大括號內(nèi)的部分。12/12/2*語句包括兩類:一類是聲明語句,另一類是執(zhí)行語句。C++對每一種語句賦予一種特定的功能。語句是實(shí)現(xiàn)操作的基本成分,顯然,沒有語句的函數(shù)是沒有意義的。C++語句必須以分號結(jié)束。*一個(gè)C++程序總是從main函數(shù)開始執(zhí)行的,而不論main函數(shù)在整個(gè)程序中的位置如何。1/2/202325*語句包括兩類:一類是聲明語句,另一類是執(zhí)行語句。12/1.3C++程序的構(gòu)成和書寫形式⑷類(class)類是C++新增加的重要的數(shù)據(jù)類型,是C++對C的最重要的發(fā)展。有了類,就可以實(shí)現(xiàn)面向?qū)ο蟪绦蛟O(shè)計(jì)方法中的封裝、信息隱蔽、繼承、派生、多態(tài)等功能。⑸書寫格式C++程序書寫格式自由,一行內(nèi)可以寫幾個(gè)語句,也可以把一個(gè)語句寫在多行上。1/2/2023261.3C++程序的構(gòu)成和書寫形式⑷類(class)⑸書寫格1.4C++程序的編寫和實(shí)現(xiàn)C++語言是一種高級程序設(shè)計(jì)語言,它的開發(fā)過程與其他高級語言程序開發(fā)過程類似,一般要經(jīng)過四個(gè)步驟:
編輯編譯鏈接執(zhí)行1/2/2023271.4C++程序的編寫和實(shí)現(xiàn)C++語言是一種編輯:用C++語言編寫程序編輯:是指把按照C++語法規(guī)則編寫的程序代碼通過編輯器(BorlandC++,VisualC++6.0,TurboC++)輸入計(jì)算機(jī),并存盤。在存盤時(shí),C++源文件的擴(kuò)展名為.CPP。執(zhí)行:運(yùn)行程序編譯:將編輯好的C++源程序通過編譯器轉(zhuǎn)換為目標(biāo)文件(OBJ文件)。即生成該源文件的目標(biāo)代碼。即把源程序翻譯成二進(jìn)制形式的“目標(biāo)程序(objectprogram)”。將目標(biāo)文件連接連接:將用戶程序生成的多個(gè)目標(biāo)代碼文件(.obj)和系統(tǒng)提供的庫文件(.lib)中的某些代碼連接在一起,生成一個(gè)可執(zhí)行文件(.exe)。對源程序進(jìn)行編譯執(zhí)行:把生成的可執(zhí)行文件運(yùn)行,在屏幕上顯示運(yùn)行結(jié)果。用戶可以根據(jù)運(yùn)行結(jié)果來判斷程序是否出錯(cuò)。注:如果運(yùn)行結(jié)果不正確,應(yīng)檢查程序或算法是否有問題。1/2/202328編輯:用C++語言編寫程序編輯:是指把按照C++語法規(guī)則編寫本章練習(xí)完成習(xí)題:5、6、7、8、91/2/202329本章練習(xí)完成習(xí)題:5、6、7、8、912/12/202229上機(jī)練習(xí)題目上機(jī)要求學(xué)會使用VisualC++6.0版本編譯系統(tǒng)完成C++語言的源程序的編譯。
上機(jī)題(1)將教材中例1.1的程序輸入計(jì)算機(jī),編輯好后存入指定文件夾中,并起一個(gè)文件名。用它聯(lián)系一個(gè)文件x學(xué)習(xí)編輯、編譯、連接、運(yùn)行的方法。1/2/202330上機(jī)練習(xí)題目上機(jī)要求12/12/202230上機(jī)練習(xí)題目上機(jī)題(2)將教材中例1.3的程序按照(1)的要求進(jìn)行編輯、編譯、連接和運(yùn)行。通過此例講解多文件程序的實(shí)現(xiàn)。1/2/202331上機(jī)練習(xí)題目上機(jī)題12/12/202231上機(jī)練習(xí)題目由兩個(gè)文件組成的程序例子第一個(gè)文件的名字為:f1.cpp,其內(nèi)容如下:#include<iostream>usingnamespacestd;intmax(intx,inty);intmain(){inta,b,m;cin>>a>>b;m=max(a,b);cout<<"max="<<m<<'\n';return0;}1/2/202332上機(jī)練習(xí)題目由兩個(gè)文件組成的程序例子12/12/202232上機(jī)練習(xí)題目由兩個(gè)文件組成的程序例子第二個(gè)文件的名字為:f2.cpp,其內(nèi)容如下:intmax(intx,inty){intz;if(x>y)z=x;elsez=y;return(z);}1/2/202333上機(jī)練習(xí)題目由兩個(gè)文件組成的程序例子12/12/202233上機(jī)練習(xí)題目自主上機(jī)調(diào)試題目1.第一個(gè)文件的名字為:f1.cpp,其內(nèi)容如下:#include<iostream>usingnamespacestd;intadd(int,int);intmain(){inta,b;cin>>a>>b;cout<<add(a,b)<<endl;}1/2/202334上機(jī)練習(xí)題目自主上機(jī)調(diào)試題目12/12/202234C++程序設(shè)計(jì)TheC++ProgrammingCollegeofComputerandInformationEngineering,TianjinNormalUniversity主講:姜麗芬1/2/2023C++程序設(shè)計(jì)TheC++Programming主課程定位《C++程序設(shè)計(jì)》是軟件學(xué)院的專業(yè)基礎(chǔ)課,是《數(shù)據(jù)結(jié)構(gòu)》、《操作系統(tǒng)》等課程的前導(dǎo)課程。《C++程序設(shè)計(jì)》是一門實(shí)踐性很強(qiáng)的課程,《C++程序設(shè)計(jì)實(shí)驗(yàn)》被獨(dú)立設(shè)課、單獨(dú)考核。其目的在于強(qiáng)化實(shí)踐環(huán)節(jié),使大家既能掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念和方法,又學(xué)會編程調(diào)試,培養(yǎng)運(yùn)用C++解決實(shí)際問題的能力。1/2/202336課程定位《C++程序設(shè)計(jì)》是軟件學(xué)院的專業(yè)基礎(chǔ)課,是《數(shù)據(jù)結(jié)學(xué)時(shí)安排本學(xué)期6周,下學(xué)期18周。上課:4學(xué)時(shí)/周實(shí)驗(yàn):4學(xué)時(shí)/周1/2/202337學(xué)時(shí)安排本學(xué)期6周,下學(xué)期18周。12/12/2教學(xué)要求課前預(yù)習(xí)、課后復(fù)習(xí)上課、實(shí)驗(yàn)不得缺席按時(shí)完成作業(yè)1/2/202338教學(xué)要求課前預(yù)習(xí)、課后復(fù)習(xí)12/12/20224考核形式考勤、作業(yè)占總成績的30%期末考試占總成績的70%上機(jī)實(shí)驗(yàn)課單獨(dú)考核1/2/202339考核形式考勤、作業(yè)占總成績的30%12/12/20225參考書目《C++程序設(shè)計(jì)題解與上機(jī)指導(dǎo)》譚浩強(qiáng)著清華大學(xué)出版社.2008年6月《C++程序設(shè)計(jì)實(shí)踐指導(dǎo)》譚浩強(qiáng)等著清華大學(xué)出版社.2005年7月《C++語言基礎(chǔ)教程》(第二版)呂鳳翥著清華大學(xué)出版社.2007年2月C++HowtoProgram(FifthEdition),H.M.DeitelandP.J.Deitel著電子工業(yè)出版社.2008
1/2/202340參考書目《C++程序設(shè)計(jì)題解與上機(jī)指導(dǎo)》譚浩強(qiáng)著清華大學(xué)出版C++程序設(shè)計(jì)第1章C++的初步知識1/2/2023C++程序設(shè)計(jì)第1章C++的初步知識12/12/2022第1章C++的初步知識1.1從C到C++1.2最簡單的C++程序1.3C++程序的構(gòu)成和書寫形式1.4C++程序的編寫和實(shí)現(xiàn)1.5關(guān)于C++上機(jī)實(shí)踐1/2/202342第1章C++的初步知識1.1從C到C++12/11.1從C到C++1972年為移植UNIX系統(tǒng),Ritchie發(fā)明了C語言,并隨UNIX風(fēng)靡全球。利用C開發(fā)時(shí),采用的是面向過程(OPP)的方法。C語言憑借其靈活性和高效性,自80年代以來在程序設(shè)計(jì)界占領(lǐng)了廣泛的市場,程序員用它開發(fā)了許多重要產(chǎn)品。但是C語言并不是萬能的,隨著軟件工程規(guī)模的擴(kuò)大,C語言的缺陷逐漸顯露出來。比如說,程序量超過50,000行,開發(fā)人員達(dá)到數(shù)十人時(shí),系統(tǒng)維護(hù)的工作量就變得相當(dāng)大,而且系統(tǒng)的整體性也難以保證。1980年貝爾實(shí)驗(yàn)室的BjarneStroustrup對C語言進(jìn)行了擴(kuò)充,推出了“Cwithclass”,1982年,正式命名為C++。
1/2/2023431.1從C到C++1972年為移植UNIX系統(tǒng),Ritc1.2最簡單的C++程序
例1.1輸出一行字符: ThisisaC++program.#include<iostream>usingnamespacestd;intmain(){cout<<"ThisisaC++program.";return0;}包含頭文件使用命名空間stdmain代表“主函數(shù)”的名字。每一個(gè)C++程序都必須有。int聲明函數(shù)的類型為整型。向操作系統(tǒng)返回零值。作用是向程序提供輸入或輸出時(shí)所需要的一些信息。C++標(biāo)準(zhǔn)庫中的類和函數(shù)是在命名空間std中聲明的因此程序中如果需要用到C++標(biāo)準(zhǔn)庫,就需要用“usingnamespacestd;”表示要用到命名空間std中的內(nèi)容。1/2/2023441.2最簡單的C++程序例1.1輸出一行字符:例1.2求a、b兩個(gè)數(shù)之和//求兩數(shù)之和#include<iostream>usingnamespacestd;intmain(){inta,b,sum;cin>>a>>b;sum=a+b;cout<<"a+b="<<sum<<endl;return0;}
//預(yù)處理命令//使用命名空間std//主函數(shù)首部//函數(shù)體開始//函數(shù)結(jié)束//定義變量//輸入語句//賦值語句//輸出語句//如程序正常結(jié)束,向操作系統(tǒng)返回一個(gè)零值如果在運(yùn)行時(shí)從鍵盤輸入123456↙則輸出為a+b=579函數(shù)體(本行是注釋行)1/2/202345例1.2求a、b兩個(gè)數(shù)之和//求兩數(shù)之和
注釋:
注釋是用來幫助閱讀、理解及維護(hù)程序。在編譯時(shí),注釋部分被忽略,不產(chǎn)生目標(biāo)代碼。C++語言提供兩種注釋方式。(1)一種是與C兼容的多行注釋,用/*和*/分界。(2)另一種是單行注釋,以“//”開頭的表明本行中用“/*……*/”作注釋時(shí)有效范圍為多行。只要在開始處有一個(gè)“/*”,在最后一行結(jié)束處有一個(gè)“*/”即可內(nèi)容較少的簡單注釋常用“//”,內(nèi)容較長的常用“/*……*/”。返回1/2/202346注釋:12/12/202212例1.3求x、y兩數(shù)中的較大者#include<iostream>usingnamespacestd;intmax(intx,inty){intz;if(x>y)z=x;elsez=y;return(z);}//變量聲明,定義本函數(shù)中用到的變量z為整型//if語句,若x>y,則將x的值賦給z//否則,將y的值賦給z//將z的值返回,通過max帶回調(diào)用處//定義max函數(shù),函數(shù)值為整型//形式參數(shù)x,y為整型1/2/202347例1.3求x、y兩數(shù)中的較大者#include<iost例1.3求x、y兩數(shù)中的較大者intmain(){ inta,b,m; cin>>a>>b; m=max(a,b); cout<<"max="<<m<<'\n'; return0;}//主函數(shù)//變量聲明//輸入變量a和b的值//調(diào)用max函數(shù),將得到的值賦給m//輸出大數(shù)m的值本程序包括兩個(gè)函數(shù):主函數(shù)main和被調(diào)用的函數(shù)max注意:輸入的兩個(gè)數(shù)據(jù)間用一個(gè)或多個(gè)空格間隔,不能以逗號或其他符號間隔。1/2/202348例1.3求x、y兩數(shù)中的較大者intmain()//主函例1.4包含類的C++程序
#include<iostream>usingnamespacestd;classStudent
{private:
//以下為類中的私有部分
intnum;
//私有變量num
doublescore;
//私有變量scorepublic: //以下為類中的公用部分
voidsetdata()
//定義公用函數(shù)
{cin>>num;cin>>score;}
//輸入num,score的值
voiddisplay()
//定義公用函數(shù)
{cout<<"num="<<num<<endl;cout<<"score="<<score<<endl;}//輸出};訪問權(quán)限私有的數(shù)據(jù)成員語句結(jié)束符類定義關(guān)鍵字公有的成員函數(shù)1/2/202349例1.4包含類的C++程序#include<ios例1.4
包含類的C++程序Studentstud1,stud2;intmain(){stud1.setdata();stud2.setdata();stud1.display();stud2.display();return0;}//定義stud1和stud2為//Student類的變量,稱為對象//調(diào)用對象stud1的setdata函數(shù)//調(diào)用對象stud2的setdata函數(shù)//調(diào)用對象stud1的display函數(shù)//調(diào)用對象stud2的display函數(shù)1/2/202350例1.4包含類的C++程序Studentstud1例1.4包含類的C++程序程序運(yùn)行情況如下:100198.5↙(輸入學(xué)生1的學(xué)號和成績)100276.5↙(輸入學(xué)生2的學(xué)號和成績)num=1001(輸出學(xué)生1的學(xué)號)score=98.5(輸出學(xué)生1的成績)num=1002(輸出學(xué)生2的學(xué)號)score=76.5(輸出學(xué)生2的成績)1/2/202351例1.4包含類的C++程序程序運(yùn)行情況如下:12/12/1.2最簡單的C++程序
1.學(xué)生入學(xué)過程程序
2.隨機(jī)挑選學(xué)生程序1/2/2023521.2最簡單的C++程序 1.學(xué)生入學(xué)過程程序12/11.3C++程序的構(gòu)成和書寫形式C++程序的結(jié)構(gòu)和書寫格式歸納如下:
1.一個(gè)C++程序可以由一個(gè)或多個(gè)程序單位構(gòu)成,每個(gè)程序單位作為一個(gè)文件。在程序編譯時(shí),編譯系統(tǒng)分別對各個(gè)文件進(jìn)行編譯,因此,一個(gè)文件是一個(gè)編譯單元。1/2/2023531.3C++程序的構(gòu)成和書寫形式C++程序的結(jié)構(gòu)和書寫格式1.3C++程序的構(gòu)成和書寫形式2.在一個(gè)程序單位中,可以包括以下幾個(gè)部分:
⑴預(yù)處理命令
預(yù)處理命令以位于行首的符號“#”開始,C++提供的預(yù)處理有宏定義命令、文件包含命令和條件編譯命令三種。⑵全局聲明部分
在這部分中包括對用戶自己定義的數(shù)據(jù)類型的聲明和程序中所用到的變量的定義。1/2/2023541.3C++程序的構(gòu)成和書寫形式2.在一個(gè)程序單位中,可以1.3C++程序的構(gòu)成和書寫形式⑶函數(shù) 一個(gè)C++程序是由若干個(gè)函數(shù)構(gòu)成的。函數(shù)分為庫函數(shù)(標(biāo)準(zhǔn)函數(shù))和自定義函數(shù)。庫函數(shù)一般是由系統(tǒng)提供的。一個(gè)完整的C++語言程序有且只有一個(gè)主函數(shù)。定義一個(gè)函數(shù)的語法格式為: 類型函數(shù)名(形式參數(shù)表) { 函數(shù)體; }1/2/2023551.3C++程序的構(gòu)成和書寫形式⑶函數(shù)定義一個(gè)函數(shù)的例如:intmax(inta,intb){intt;if(a>b)t=a;elset=b;returnt;}函數(shù)體函數(shù)首部函數(shù)名函數(shù)類型函數(shù)形參聲明語句執(zhí)行語句一個(gè)C++程序總是從main函數(shù)開始執(zhí)行的,而不論main函數(shù)在整個(gè)程序中的位置如何。1/2/202356例如:函數(shù)體函數(shù)首部函數(shù)名函數(shù)類型函數(shù)形參聲明語句執(zhí)行語句一
一個(gè)函數(shù)由兩部分組成:①函數(shù)首部,即函數(shù)的第一行。包括函數(shù)名、函數(shù)類型、函數(shù)參數(shù)(形參)名、參數(shù)類型。一個(gè)函數(shù)名后面必須跟一對圓括號,函數(shù)參數(shù)可以缺省,如intmain()。1/2/202357 一個(gè)函數(shù)由兩部分組成:12/12/202223
②函數(shù)體,即函數(shù)首部下面的大括號內(nèi)的部分。函數(shù)體一般包括:局部聲明部分(在函數(shù)內(nèi)的聲明部分)。包括對本函數(shù)中所用到的類型、函數(shù)的聲明和變量的定義。對數(shù)據(jù)的聲明既可以放在函數(shù)之外(其作用范圍是全局的),也可以放在函數(shù)內(nèi)(其作用范圍是局部的,只在本函數(shù)內(nèi)有效)。執(zhí)行部分。由若干個(gè)執(zhí)行語句組成,用來進(jìn)行有關(guān)的操作,以實(shí)現(xiàn)函數(shù)的功能。1/2/202358 ②函數(shù)體,即函數(shù)首部下面的大括號內(nèi)的部分。12/12/2*語句包括兩類:一類是聲明語句,另一類是執(zhí)行語句。C++對每一種語句賦予一種特定的功能。語句是實(shí)現(xiàn)操作的基本成分,顯然,沒有語句的函數(shù)是沒有意義的。C++語句必須以分號結(jié)束。*一個(gè)C++程序總是從main函數(shù)開始執(zhí)行的,而不論main函數(shù)在整個(gè)程序中的位置如何。1/2/202359*語句包括兩類:一類是聲明語句,另一類是執(zhí)行語句。12/1.3C++程序的構(gòu)成和書寫形式⑷類(class)類是C++新增加的重要的數(shù)據(jù)類型,是C++對C的最重要的發(fā)展。有了類,就可以實(shí)現(xiàn)面向?qū)ο蟪绦蛟O(shè)計(jì)方法中的封裝、信息隱蔽、繼承、派生、多態(tài)等功能。⑸書寫格式C++程序書寫格式自由,一行內(nèi)可以寫幾個(gè)語句,也可以把一個(gè)語句寫在多行上。1/2/2023601.3C++程序的構(gòu)成和書寫形式⑷類(class)⑸書寫格1.4C++程序的編寫和實(shí)現(xiàn)C++語言是一種高級程序設(shè)計(jì)語言,它的開發(fā)過程與其他高級語言程序開發(fā)過程類似,一般要經(jīng)過四個(gè)步驟:
編輯編譯鏈接執(zhí)行1/2/2023611.4C++程序的編寫和實(shí)現(xiàn)C++語言是一種編輯:用C++語言編寫程序編輯:是指把按照C++語法規(guī)則編寫的程序代碼通過編輯器(Bor
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年房地產(chǎn)開發(fā)委托開發(fā)及環(huán)境監(jiān)測服務(wù)合同范本3篇
- 二零二五年度面粉產(chǎn)品跨境電商銷售合同范本4篇
- 2025年度個(gè)人二手奢侈品購銷與保養(yǎng)服務(wù)合同4篇
- 某工程有限責(zé)任公司2025年度生物質(zhì)爐渣銷售合作協(xié)議4篇
- 二零二五版吊車行業(yè)風(fēng)險(xiǎn)評估與預(yù)警服務(wù)合同2篇
- 二零二五年度農(nóng)業(yè)科技園項(xiàng)目合作合同范本4篇
- 成品移動公廁施工方案
- 成長瞬間回顧模板
- 2025年個(gè)人快遞物流服務(wù)合作協(xié)議范本4篇
- 政治創(chuàng)新驅(qū)動發(fā)展課程設(shè)計(jì)
- 消防產(chǎn)品目錄(2025年修訂本)
- 9.2提高防護(hù)能力教學(xué)設(shè)計(jì) 2024-2025學(xué)年統(tǒng)編版道德與法治七年級上冊
- 催收培訓(xùn)制度
- 城市軌道交通的網(wǎng)絡(luò)安全與數(shù)據(jù)保護(hù)
- 《行政職業(yè)能力測驗(yàn)》2023年公務(wù)員考試新疆維吾爾新疆生產(chǎn)建設(shè)兵團(tuán)可克達(dá)拉市預(yù)測試題含解析
- 醫(yī)院投訴案例分析及處理要點(diǎn)
- 練習(xí)20連加連減
- 五四制青島版數(shù)學(xué)五年級上冊期末測試題及答案(共3套)
- 商法題庫(含答案)
- 鋼結(jié)構(gòu)用高強(qiáng)度大六角頭螺栓連接副 編制說明
- 溝通與談判PPT完整全套教學(xué)課件
評論
0/150
提交評論