編程基礎知識_第1頁
編程基礎知識_第2頁
編程基礎知識_第3頁
編程基礎知識_第4頁
編程基礎知識_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

C++簡單程序設計C++語言程序設計2021/5/91本章主要內容運算符與表達式算法的基本控制結構結構體2021/5/92算術運算符與算術表達式基本算術運算符

+-*/(若整數(shù)相除,結果取整)%(取余,操作數(shù)為整數(shù))優(yōu)先級與結合性先乘除,后加減,同級自左至右++,--(自增、自減)例:i++;--j;Page3基本數(shù)據(jù)類型和表達式2021/5/93賦值運算符和賦值表達式

簡單的賦值運算符"="舉例

n=n+5表達式的類型

等號左邊對象的類型表達式的值

等號左邊對象被賦值后的值Page4基本數(shù)據(jù)類型和表達式2021/5/94賦值運算符和賦值表達式

復合的賦值運算符復合運算符:

+=,-=,*=,/=,%=,

a+=3

等價于a=a+3

x*=y+8

等價于x=x*(y+8)基本數(shù)據(jù)類型和表達式2021/5/95逗號運算和逗號表達式格式表達式1,表達式2求解順序及結果先求解1,再求解2,最終結果為表達式2的值例a=3*5,a*4

最終結果為60Page6基本數(shù)據(jù)類型和表達式2021/5/96關系運算與關系表達式關系運算是比較簡單的一種邏輯運算,優(yōu)先次序為:

<<=>>===!=

優(yōu)先級相同(高)優(yōu)先級相同(低)關系表達式是一種最簡單的邏輯表達式其結果類型為bool,值只能為true

或false。例如:a>b,c<=a+b,x+y==3基本數(shù)據(jù)類型和表達式2021/5/97邏輯運算與邏輯表達式邏輯運算符

!(非)&&(與)||(或)

優(yōu)先次序:高→低邏輯表達式

例如:(a>b)&&(x>y)

其結果類型為bool,值只能為true

或false基本數(shù)據(jù)類型和表達式2021/5/98條件運算符與條件表達式注意:條件運算符優(yōu)先級高于賦值運算符,低于邏輯運算符例:x=a>b?a:b;基本數(shù)據(jù)類型和表達式①②2021/5/99sizeof運算符語法形式

sizeof(類型名)

或sizeof表達式結果值:

“類型名”所指定的類型或“表達式”的結果類型所占的字節(jié)數(shù)。例:sizeof(short)sizeofx基本數(shù)據(jù)類型和表達式2021/5/910基本輸入輸出輸入/輸出格式定義如下:向標準輸出設備(顯示器)輸出例:intx;cout<<"x="<<x;從標準輸入設備(鍵盤)輸入例:intx;cin>>x;cin>>變量名;cout<<變量名或常量;2021/5/911開發(fā)環(huán)境[例1-2]創(chuàng)建一個控制臺應用程序,當其運行時在屏幕上顯示“Hello,World!”。2021/5/912#include<iostream>voidmain(){cout<<"HelloWorld!"<<endl;//在屏幕上輸出“HelloWorld!}2021/5/913順序結構分支結構循環(huán)結構算法的基本控制結構2021/5/914如何解決多分支問題?例輸入兩個整數(shù),比較兩個數(shù)的大小。算法的基本控制結構2021/5/915#include<iostream>usingnamespacestd;intmain(){intx,y;cout<<"Enterxandy:";cin>>x>>y;

if(x!=y)

if(x>y)cout<<"x>y"<<endl;elsecout<<"x<y"<<endl;

elsecout<<"x=y"<<endl;}162021/5/916運行結果1:Enterxandy:58x<y運行結果2:Enterxandy:88x=y運行結果3:Enterxandy:128x>y172021/5/917一般形式switch(表達式){case常量表達式1:語句1case常量表達式2:語句2┆case常量表達式n:語句ndefault:語句n+1}switch語句執(zhí)行順序以case中的常量表達式值為入口標號,由此開始順序執(zhí)行。因此,每個case分支最后應該加break語句。每個常量表達式的值不能相同,次序不影響執(zhí)行結果??梢允嵌鄠€語句,但不必用{}??梢允钦?、字符型、枚舉型2021/5/918特殊的多分支結構例輸入一個0~6的整數(shù),轉換成星期輸出。2021/5/919#include<iostream>usingnamespacestd;intmain(){ intday; cin>>day; switch(day){case0:cout<<"Sunday"<<endl;break;case1:cout<<"Monday"<<endl;break;case2:cout<<"Tuesday"<<endl;break;case3:cout<<"Wednesday"<<endl;break;case4:cout<<"Thursday"<<endl;break;case5:cout<<"Friday"<<endl;break;case6:cout<<"Saturday"<<endl;break;default:cout<<"DayoutofrangeSunday..Saturday"<<endl;break; } return0;}2021/5/920while語句形式while(表達式)語句

可以是復合語句,其中必須含有改變條件表達式值的語句。執(zhí)行順序先判斷表達式的值,若為true時,執(zhí)行語句。算法的基本控制結構2021/5/921do-while語句一般形式do語句while(表達式)可以是復合語句,其中必須含有改變條件表達式值的語句。執(zhí)行順序先執(zhí)行循環(huán)體語句,后判斷條件。

表達式為true時,繼續(xù)執(zhí)行循環(huán)體與while語句的比較:while語句執(zhí)行順序

先判斷表達式的值,為true時,再執(zhí)行語句算法的基本控制結構2021/5/922對比下列程序:程序1:#include<iostream>usingnamespacestd;intmain(){inti,sum=0;cin>>i;

while(i<=10){sum+=i;i++;}cout<<"sum="<<sum<<endl;return0;}算法的基本控制結構程序2:#include<iostream>usingnamespacestd;intmain(){inti,sum=0;cin>>i;

do{sum+=i;i++;}while(i<=10);

cout<<"sum="<<sum<<endl;return0;}232021/5/923for語句for(初始語句;表達式1;表達式2)語句

循環(huán)前先求解為true時執(zhí)行循環(huán)體每次執(zhí)行完循環(huán)體后求解算法的基本控制結構例:for(i=1;i<=10;i++)cout<<"*";for(i=1;i<=10;i++)cout<<"*";cout<<"$";2021/5/924break和continue語句break語句使程序從循環(huán)體和switch語句內跳出,繼續(xù)執(zhí)行邏輯上的下一條語句。不宜用在別處。continue語句結束本次循環(huán),接著判斷是否執(zhí)行下一次循環(huán)。算法的基本控制結構2021/5/925關于break和continue語句的例子#include<iostream>usingnamespacestd;voidmain(){intx=1;for(inti=0;i<6;i++) {if(i%2)continue;if(i%3)break;

x++; } cout<<"i="<<i<<";x="<<x<<endl;}2021/5/926函數(shù)的聲明函數(shù)是面向對象程序設計中,對功能的抽象函數(shù)聲明的語法形式類型標識符函數(shù)名(形式參數(shù)表){

語句序列}函數(shù)的聲明與使用是被初始化的內部變量,壽命和可見性僅限于函數(shù)內部若無返回值,寫void2021/5/927例編寫一個求x的n次方的函數(shù)#include<iostream.h>doublepower(doublex,intn);intmain(){ cout<<"5tothepower2is"

<<power(5,2)<<endl;}doublepower(doublex,intn){ doubleval=1.0; while(n--) val=val*x; return(val);}函數(shù)的聲明與使用2021/5/928運行結果:5tothepower2is25例編寫一個求x的n次方的函數(shù)函數(shù)的聲明與使用2021/5/929結構體——結構的聲明結構的概念結構是由不同數(shù)據(jù)類型的數(shù)據(jù)組成的集合體。聲明結構類型

struct結構名

{

數(shù)據(jù)類型成員名1;數(shù)據(jù)類型成員名2;:數(shù)據(jù)類型成員名n;

};自定義數(shù)據(jù)類型2021/5/930結構體——結構的聲明舉例:structstudent//學生信息結構體{intnum;//學號

charname[20];//姓名

chargender;//性別

intage;//年齡

floatscore;//成績

charaddr[30];//住址};自定義數(shù)據(jù)類型2021/5/931結構體——結構變量說明變量說明形式結構名結構變量名;注意:結構變量的存儲類型概念、它的壽命、可見性及使用范圍與普通變量完全一致。結構變量說明在結構類型聲明之后,二者也可同時進行。結構變量占內存大小可用sizeof運算求出:

sizeof(運算量)自定義數(shù)據(jù)類型2021/5/932結構體

——結構變量的初始化和使用初始化說明結構變量的同時可以直接設置初值。使用結構體成員的引用形式:

結構變量名.成員名自定義數(shù)據(jù)類型2021/5/933例結構體變量的初始化和使用#include<iostream>#include<iomanip>usingnamespacestd;structstudent//學生信息結構體{intnum;//學號

charname[20];//姓名

chargender;//性別

intage;//年齡}stu={97001,"LinLin",'F',19};intmain(){cou

溫馨提示

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

評論

0/150

提交評論