亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

試題

計(jì)算機(jī)二級C++考點(diǎn):基本控制結(jié)構(gòu)

時(shí)間:2024-10-18 13:40:23 試題 我要投稿
  • 相關(guān)推薦

計(jì)算機(jī)二級C++考點(diǎn):基本控制結(jié)構(gòu)

  大家在為計(jì)算機(jī)二級考試做完基本的復(fù)習(xí)之后,接下來就是著重復(fù)習(xí)計(jì)算機(jī)二級的考點(diǎn)了,下面就是小編跟大家分享計(jì)算機(jī)二級C++考點(diǎn)基本控制結(jié)構(gòu),歡迎大家閱讀!

  1C++語句

  C++語句按照不同功能大體分為6種類型,它們是:

  (1)聲明語句:用于對程序中的各種實(shí)體進(jìn)行聲明、定義及初始化。

  (2)表達(dá)式語句:用于對程序中的數(shù)據(jù)進(jìn)行具體操作和處理。

  (3)選擇語句:用于實(shí)現(xiàn)程序的選擇結(jié)構(gòu)。

  (4)循環(huán)語句:用于實(shí)現(xiàn)程序的循環(huán)結(jié)構(gòu)。

  (5)跳轉(zhuǎn)語句:用于實(shí)現(xiàn)程序執(zhí)行流程的轉(zhuǎn)移。

  (6)復(fù)合語句:用于表示程序中的語句塊概念。

  應(yīng)當(dāng)指出的是,C++中并不存在賦值語句和函數(shù)調(diào)用語句,賦值和函數(shù)調(diào)用都屬于表達(dá)式而不是語句。

  2順序結(jié)構(gòu)

  1聲明語句

  聲明語句又稱為說明語句,它可以用來對程序中出現(xiàn)的各種名稱進(jìn)行聲明。這些名稱通常是表示變量、常量、函數(shù)、結(jié)構(gòu)、類、對象等實(shí)體的標(biāo)識符。在C++程序中,一個(gè)名稱在使用之前必須先被聲明。聲明的目的是告訴編譯器某個(gè)名稱所指代的實(shí)體類型。使用聲明語句能夠在程序中進(jìn)行如下操作:

  (1)變量聲明

  (2)常量聲明

  (3)函數(shù)聲明

  (4)類型聲明

  聲明語句可以完成的工作不僅局限于為名稱指定類型,同時(shí)也是定義語句。

  另外,使用聲明語句還可以在定義變量時(shí)對其進(jìn)行初始化。

  2表達(dá)式語句

  C++中所有對數(shù)據(jù)的操作和處理工作都是通過表達(dá)式語句來完成的。表達(dá)式語句的語法格式為:

 。急磉_(dá)式>;

  (1)賦值操作。

  (2)復(fù)合賦值操作。

  (3)增量、減量操作。

  (4)函數(shù)調(diào)用操作。

  (5)輸入輸出操作。

  3基本輸入輸出

  一個(gè)程序通常會(huì)向用戶輸出一些信息,一般也會(huì)要求用戶輸入一些信息。C++程序的輸入輸出操作是通過標(biāo)準(zhǔn)庫中的輸入/輸出流對象來完成的。

  在頭文件iostream中定義了代表屏幕的標(biāo)準(zhǔn)輸出流對象cout和代表鍵盤的標(biāo)準(zhǔn)輸入流對象cin。cin和cout具有強(qiáng)大的輸入輸出功能和極為靈活的用法。在程序中使用cin和cout之前,應(yīng)首先加入預(yù)處理命令:#include<iostream>,以包含標(biāo)準(zhǔn)頭文件iostream。

  使用cout進(jìn)行數(shù)據(jù)輸出操作的一般格式為:

  cout<<Expr;

  這是一條表達(dá)式語句。其中,Expr代表一個(gè)表達(dá)式;“<<”稱為插入運(yùn)算符。整條語句的含義是:將表達(dá)式Expr的值輸出(顯示)到屏幕上當(dāng)前光標(biāo)所在位置。

  4復(fù)合語句和空語句

  復(fù)合語句又稱為塊語句,它是用一對花括號“{}”將若干條語句包圍起來而組成的一條語句,其語法格式為:

 。

  <語句1>

 。颊Z句2>

  …

  <語句n>

 。

  其中,<語句i>(i=1,2…,n)可以是聲明語句、表達(dá)式語句、選擇語句、循環(huán)語句或跳轉(zhuǎn)語句等任何合法的C++語句,當(dāng)然,也可以是一個(gè)復(fù)合語句。分隔符“{”和“}”的作用是把若干條語句組成的序列包圍起來,使它們在邏輯上成為一條語句。復(fù)合語句可以出現(xiàn)在程序中任何需要語句的地方,但在通常情況下復(fù)合語句可以作為以下成分出現(xiàn)在程序中。

  (1)函數(shù)的函數(shù)體;

  (2)循環(huán)語句的循環(huán)體;

  (3)if語句的分支;

  (4)switch語句的執(zhí)行部分。

  實(shí)際上,空語句是一種特殊的表達(dá)式語句。其語法格式為:

  ;即空語句只由一個(gè)分號組成。

  3選擇結(jié)構(gòu)

  1語句

  if語句又稱為條件語句,它是程序設(shè)計(jì)語言中最常見的一種選擇語句。

  (1)基本if語句

  基本if語句的功能是根據(jù)給定條件是否成立來決定要不要執(zhí)行一條語句或語句塊,它的語法格式如下:

  if(<條件>)<語句>

  其中,if為關(guān)鍵字;<條件>通常是一個(gè)表達(dá)式且必須用圓括號包圍起來;<語句>稱為if子句,它可以是任何類型的語句(包括復(fù)合語句和空語句)。

  基本if語句的執(zhí)行過程是:首先計(jì)算<條件>的值,如果此值不為0(“真”),則執(zhí)行<語句>;如果此值為0(“假”),則忽略<語句>(即不執(zhí)行)而繼續(xù)執(zhí)行if語句之后的下一條語句。

  說明:

 、貱++中規(guī)定:如果<條件>是一個(gè)表達(dá)式,則當(dāng)此表達(dá)式的值不為0時(shí),條件結(jié)果為“真”;只有當(dāng)此表達(dá)式的值為0時(shí),條件結(jié)果才為“假”。

  ②<條件>也可以是一條聲明語句,其中必須定義一個(gè)變量并對它進(jìn)行初始化。這時(shí),若此變量的值不為0,則條件結(jié)果為“真”;若此變量的值為0,則條件結(jié)果為“假”。

  (2)if…else語句

  if…else語句是基本if語句的擴(kuò)展,其功能是根據(jù)給定條件是否成立來決定執(zhí)行兩部分語句中的哪一部分,其語法格式如下:

  if(<條件>)

 。颊Z句1>

  else

 。颊Z句2>

  其中,if和else為關(guān)鍵字;<語句1>稱為if子句,<語句2>稱為else子句,它們可以是單條語句或復(fù)合語句。

  if…else語句的執(zhí)行過程是:首先計(jì)算<條件>的值,如果此值不為0(“真”),則執(zhí)行<語句1>,然后忽略<語句2>而去執(zhí)行if語句之后的下一條語句;如果此值為0(“假”),則忽略<語句1>,執(zhí)行<語句2>,然后繼續(xù)執(zhí)行if語句之后的下一條語句。

  (3)if語句的嵌套

  if子句和else子句可以是任何類型的C++語句,當(dāng)然也可以是if…else語句本身。通常將這種情況稱為if語句的嵌套。

  2switch

  switch語句又稱為開關(guān)語句,它也是一種選擇語句。switch語句的功能是根據(jù)給定表達(dá)式的不同取值來決定從多個(gè)語句序列中的哪一個(gè)開始執(zhí)行,其語法格式如下:

  switch(<表達(dá)式>){

  case<常量表達(dá)式1>:

 。颊Z句序列1>

  case<常量表達(dá)式2>:

 。颊Z句序列2>

  …

  case<常量表達(dá)式n>:

 。颊Z句序列n>

  default:

  <語句序列n+1>

 。

  其中,switch,case和default為關(guān)鍵字;<表達(dá)式>的值必須屬于整型、字符型或枚舉型。<常量表達(dá)式i>(i=1,2…n)是取值互不相同的整型常量、字符常量或枚舉常量,其具體類型應(yīng)與<表達(dá)式>的值相一致。<語句序列i>(i=1,2…n,n+1)可以是任意多條語句。

  switch語句的執(zhí)行過程是:

  (1)首先計(jì)算出<表達(dá)式>的值,設(shè)此值為E;

  (2)然后計(jì)算每個(gè)<常量表達(dá)式i>的值,設(shè)它們分別為C1,C2,…,Cn;

  (3)將E依次與C1,C2,…,Cn進(jìn)行比較。如果E與某個(gè)值相等,則從該值所在的case標(biāo)號語句開始執(zhí)行各個(gè)語句序列,在不出現(xiàn)跳轉(zhuǎn)語句的情況下,將一直執(zhí)行到switch語句結(jié)束!

  (4)如果E與所有值都不相等且存在default標(biāo)號,則從default標(biāo)號語句起開始向下執(zhí)行,直到switch語句結(jié)束(同樣,在不出現(xiàn)跳轉(zhuǎn)語句的情況下)。

  (5)如果E與所有值都不相等且不存在default標(biāo)號,則switch語句不會(huì)執(zhí)行任何操作。

  說明:

  (1)多個(gè)case標(biāo)號可以共用一組語句序列,以實(shí)現(xiàn)對于幾個(gè)常量值都執(zhí)行同一操作。

  (2)default標(biāo)號語句是可選的。當(dāng)default不出現(xiàn)時(shí),如果<表達(dá)式>的值與所有<常量表達(dá)式i>(i=1,2…n)的值都不相等,則程序執(zhí)行流程會(huì)跳過switch語句。

  (3)switch語句是可以嵌套的。case和default標(biāo)號只與包含它們的最內(nèi)層的switch組合在一起。

  (4)當(dāng)需要針對表達(dá)式的不同取值范圍進(jìn)行不同處理時(shí),使用if…else…if階梯結(jié)構(gòu)比較方便。因?yàn)閟witch語句只能對相等關(guān)系進(jìn)行測試,而if語句卻可以用關(guān)系表達(dá)式對一個(gè)較大范圍內(nèi)的值進(jìn)行測試。

  4循環(huán)結(jié)構(gòu)

  1for語句

  for語句是C++中最常用且功能最強(qiáng)的循環(huán)語句,其語法格式如下:

  for(<表達(dá)式1>;<表達(dá)式2>;<表達(dá)式3>)

  <語句>

  其中,for為關(guān)鍵字;<表達(dá)式1>是for循環(huán)的初始化部分,它一般用來設(shè)置循環(huán)控制變量的初始值;<表達(dá)式2>是for循環(huán)的條件部分,它是用來判定循環(huán)是否繼續(xù)進(jìn)行的條件;<表達(dá)式3>是for循環(huán)的增量部分,它一般用于修改循環(huán)控制變量的值;<語句>稱為for循環(huán)的循環(huán)體,它是要被重復(fù)執(zhí)行的代碼行,for循環(huán)體可以是單條語句,也可以是由花括號包圍起來的復(fù)合語句。

  for語句的執(zhí)行過程是:

  (1)計(jì)算<表達(dá)式1>的值;

  (2)計(jì)算<表達(dá)式2>的值,如果此值不等于0(即循環(huán)條件為“真”),則轉(zhuǎn)向步驟(3);如果此值等于0(即循環(huán)條件為“假”),則轉(zhuǎn)向步驟(5);

  (3)執(zhí)行一遍循環(huán)體<語句>:

  (4)計(jì)算<表達(dá)式3>的值,然后轉(zhuǎn)向步驟(2);

  (5)結(jié)束for循環(huán)。

  C++中for語句的書寫格式非常靈活,這主要表現(xiàn)為:

  (1)<表達(dá)式1>可以是變量聲明語句,即循環(huán)控制變量可在其中定義。

  (2)<表達(dá)式1>可以省略。這時(shí),應(yīng)在for語句之前給循環(huán)控制變量賦初始值。注意:省略<表達(dá)式1>時(shí),其后的分號不能省略。

  (3)<表達(dá)式2>可以省略。這時(shí),for語句將不再判斷循環(huán)條件,循環(huán)會(huì)無限次地執(zhí)行下去。這種情況通常稱為“死循環(huán)”。

  (4)<表達(dá)式3>可以省略。這時(shí),應(yīng)在循環(huán)中對循環(huán)控制變量進(jìn)行遞增或遞減操作,以確保循環(huán)能夠正常結(jié)束。

  (5)三個(gè)表達(dá)式可同時(shí)省略。這時(shí),for語句顯然也是一個(gè)“死循環(huán)”。

  (6)<表達(dá)式1>、<表達(dá)式2>和<表達(dá)式3>都可以是任何類型的C++表達(dá)式。

  2while語句

  while語句是一種形式較為簡單的循環(huán)語句,其語法格式如下:

  while(<表達(dá)式>)<語句>其中,while為關(guān)鍵字:<表達(dá)式>是while循環(huán)的條件,它用于控制循環(huán)是否繼續(xù)進(jìn)行;<語句>稱為while循環(huán)的循環(huán)體,它是要被重復(fù)執(zhí)行的代碼行;while循環(huán)體可以是單條語句,也可以是由花括號括起來的復(fù)合語句。實(shí)際上,while語句是for語句省略掉表達(dá)式1和表達(dá)式3的特殊情況。

  while語句的執(zhí)行過程是:

  (1)計(jì)算<表達(dá)式>的值,如果此值不等于0(即循環(huán)條件為“真”),則轉(zhuǎn)向步驟(2);如果此值等于0(即循環(huán)條件為“假”),則轉(zhuǎn)向步驟(4);

  (2)執(zhí)行一遍循環(huán)體<語句>;

  (3)轉(zhuǎn)向步驟(1);

  (4)結(jié)束while循環(huán)。

  從中可以看出,while語句將在<表達(dá)式>成立的情況下重復(fù)執(zhí)行<語句>;如果在第一次進(jìn)入while循環(huán)時(shí)<表達(dá)式>就不成立,則<語句>一次也不會(huì)執(zhí)行。

  注意:

  (1)由于while語句中缺少對循環(huán)控制變量進(jìn)行初始化的結(jié)構(gòu),因此在使用while循環(huán)之前對循環(huán)控制變量進(jìn)行初始化顯得很重要。

  (2)在while循環(huán)體中不要忘記對循環(huán)控制變量的值進(jìn)行修改,以使循環(huán)趨向結(jié)束。

  3do…while語句;do…while語句也是一種循環(huán)語句,它的功能類似于while語句,只是將循環(huán)的判定條件移到了循環(huán)體之后,其語法格式如下:

  do<語句>while(<表達(dá)式>);

  其中,do和while為關(guān)鍵字;<語句>稱為do…while循環(huán)的循環(huán)體,它是要被重復(fù)執(zhí)行的代碼行,do……while循環(huán)體可以是單條語句,也可以是由花括號包圍起來的復(fù)合語句;<表達(dá)式>是do……while循環(huán)的條件,它用于控制循環(huán)是否繼續(xù)進(jìn)行。

  注意:在do…while語句中最后的分號不能丟掉,它用來表示do……while語句的結(jié)束。

  do……while語句的執(zhí)行過程是:

  (1)執(zhí)行一遍循環(huán)體<語句>;

  (2)計(jì)算<表達(dá)式>的值,如果此值不等于0(即循環(huán)條件為“真”),則轉(zhuǎn)向步驟(1);如果此值等于0(即循環(huán)條件為“假”),則轉(zhuǎn)向步驟(3);

  (3)結(jié)束do…while循環(huán)。

  注意:

  (1)在使用do…while循環(huán)之前同樣需要對循環(huán)控制變量進(jìn)行初始化;在do…while循環(huán)中仍然不要忘記對循環(huán)控制變量進(jìn)行修改,以使循環(huán)趨向結(jié)束,避免死循環(huán)的發(fā)生。

  (2)do…while循環(huán)與while循環(huán)的不同之處在于:do…while循環(huán)的循環(huán)體在前,循環(huán)條件在后,因此do…while循環(huán)體在任何條件下(即使不滿足循環(huán)條件)都至少被執(zhí)行一次。而while循環(huán)條件在前,循環(huán)體在后,當(dāng)條件不滿足時(shí),循環(huán)體有可能一次也不會(huì)執(zhí)行。這一點(diǎn)正是在構(gòu)造循環(huán)結(jié)構(gòu)時(shí)決定使用while語句還是do…while語句的重要依據(jù)。

  循環(huán)的嵌套

  在一個(gè)循環(huán)結(jié)構(gòu)中又完整地包含著另一個(gè)循環(huán)結(jié)構(gòu)稱為循環(huán)的嵌套。C++中三種類型的循環(huán)語句都可以相互嵌套,并且嵌套的層數(shù)沒有限制。程序設(shè)計(jì)中有許多問題需要使用循環(huán)結(jié)構(gòu)的嵌套來解決。

  5跳轉(zhuǎn)語句

  C++中有4種跳轉(zhuǎn)語句,它們是:break語句、continue語句、return語句和goto語句。

  1break語句

  break語句又稱為跳出語句,其語法格式如下:

  break;

  即由關(guān)鍵字break加上一個(gè)分號構(gòu)成。

  break語句只能用在switch語句和循環(huán)語句中。在switch語句中,break用來使執(zhí)行流程跳出switch語句,而繼續(xù)執(zhí)行switch后面的語句。在循環(huán)語句中,break用來使執(zhí)行流程無條件地跳出本層循環(huán)體。

  另外,break語句還經(jīng)常用于使執(zhí)行流程跳出死循環(huán)。

  2continue語句

  continue語句又稱為繼續(xù)語句,其語法格式如下:

  continue;

  即由關(guān)鍵字continue加上一個(gè)分號構(gòu)成。

  continue語句僅用在循環(huán)語句中,它的功能是:結(jié)束本次循環(huán),即跳過循環(huán)中尚未執(zhí)行的語句,接著進(jìn)行下一次是否執(zhí)行循環(huán)的條件判定。

  在while和do…while循環(huán)中,continue語句將使執(zhí)行流程直接跳轉(zhuǎn)到循環(huán)條件的判定部分,然后決定循環(huán)是否繼續(xù)進(jìn)行。在for循環(huán)中,當(dāng)遇到continue時(shí),執(zhí)行流程將跳過循環(huán)中余下的語句,而轉(zhuǎn)去執(zhí)行for語句中的<表達(dá)式3>,然后根據(jù)<表達(dá)式2>進(jìn)行循環(huán)條件的判定以決定是否繼續(xù)執(zhí)行for循環(huán)體。

  3return語句

  return語句又稱為返回語句,它具有兩種語法格式:

  (1)return;

  (2)return<表達(dá)式>;

  其中,return為關(guān)鍵字,第2種格式中的<表達(dá)式>可以是任何類型的C++表達(dá)式。

  return語句只能用在函數(shù)體中。在返回類型為void的函數(shù)體中,若想跳出函數(shù)體,將執(zhí)行流程轉(zhuǎn)移到調(diào)用該函數(shù)的位置,應(yīng)使用return語句的第1種格式。在返回類型不是void的函數(shù)體中,應(yīng)使用return語句的第2種格式,使執(zhí)行流程轉(zhuǎn)移到調(diào)用該函數(shù)的位置,并將<表達(dá)式>的值作為函數(shù)的返回值。

  對于非void返回類型的函數(shù)來說,其函數(shù)體中必須至少具有一條return語句。

  4goto語句

  goto語句又稱為轉(zhuǎn)向語句,其語法格式如下:

  goto<標(biāo)號>;

  其中,goto為關(guān)鍵字;<標(biāo)號>是一個(gè)由用戶命名的標(biāo)識符。在goto語句所處的函數(shù)體中必須同時(shí)存在一條由<標(biāo)號>標(biāo)記的語句,其格式為:

 。紭(biāo)號>:<語句>

  即在<標(biāo)號>和<語句>之間使用一個(gè)冒號分隔,這種語法結(jié)構(gòu)稱為標(biāo)號語句。標(biāo)號語句中的<標(biāo)號>應(yīng)與goto語句中的<標(biāo)號>相同,<語句>可以是任何類型的C++語句。注意:某個(gè)goto語句和相應(yīng)的標(biāo)號語句必須位于同一函數(shù)體內(nèi)。

  goto語句的功能是使執(zhí)行流程跳轉(zhuǎn)到<標(biāo)號>所標(biāo)記的<語句>處(即對應(yīng)的標(biāo)號語句處)。

【計(jì)算機(jī)二級C++考點(diǎn):基本控制結(jié)構(gòu)】相關(guān)文章:

計(jì)算機(jī)二級C++函數(shù)考點(diǎn)07-22

2017計(jì)算機(jī)二級C++考點(diǎn)類的轉(zhuǎn)換10-25

2017計(jì)算機(jī)二級C++考點(diǎn)習(xí)題及答案07-07

計(jì)算機(jī)二級C語言《基本知識》考點(diǎn)06-14

計(jì)算機(jī)二級C++模板概述07-06

計(jì)算機(jī)二級C語言考點(diǎn):結(jié)構(gòu)體和共用體10-04

計(jì)算機(jī)二級C++函數(shù)解釋10-02

C++函數(shù)考點(diǎn)歸納09-30

計(jì)算機(jī)二級C++選擇特訓(xùn)題09-18

計(jì)算機(jī)二級C++模擬試題及答案09-22