C++筆記--控制語句

来源:https://www.cnblogs.com/krimes827828/archive/2023/03/08/17191303.html
-Advertisement-
Play Games

控制語句:程式預設是順序執行,但在實際項目中需要選擇、迴圈。 1 選擇控制語句if 1.1 if語句的形式 1 if(條件表達式) 2 {//複合語句,若幹條語句的集合 3 語句一; 4 語句二; 5 } 註意:如果條件成立執行大括弧里的所有語句,不成立的話大括弧里的語句都不執行。 if(條件表達式 ...


控制語句:程式預設是順序執行,但在實際項目中需要選擇、迴圈。

1 選擇控制語句if

1.1 if語句的形式

1 if(條件表達式)
2 {//複合語句,若幹條語句的集合
3   語句一;
4   語句二;
5 }

註意:如果條件成立執行大括弧里的所有語句,不成立的話大括弧里的語句都不執行。

if(條件表達式)  //如果if沒有{} 只能作用一條語句(if只能識別語句一)
語句一;
語句二;

案例一:判斷data是否被3整除

int data =12;
if(data%3 == 0)
{  
  cout<<data<<"能被3整除"<<endl;
}

1.2 if else

案例二:對一個int數據取餘數

int data =0;
cout<<"請輸入一個整數";
cin>>data;
if(data%2 ==0)
{
   cout<<"餘數為0";
}
 else
{        
  cout
<<"餘數為1"; } }

註意:如果項目有兩種結果,且不會同時出現,就選擇if...else...

1.3 if...else if...else語句

if(表達式1)
{    
  語句1;  
}
else if(表達式2)
{
  語句2;
}
...
else()
{
  語句n;        
}            
  1. 如果表達式1為真 執行語句1,其他條件將不會再判斷。只有當表達式1為假時 才會去判斷表達式2的真假。
  2. 如果表達式2為真執行語句2,其他條件將不會再判斷。只有當表達式2為假時才會去判斷表達式3的真假。(依此類推)只有所有表達式都為假時,最後才會執行else中的語句n。
  3. 註意:如果項目有多個結果,但是只會出現一個,請選擇if...else if  
  4. 案例一:輸入int數據求餘數:
int data =0;
    cout<<"請輸入一個整數";
    cin>>data;
    if(data%3 ==0)
    {
        cout<<"餘數為0";
    }
    else if(data%3==1)
    {
        cout<<"餘數為1";
    }
    else
    {
        cout<<"餘數為2";
    }

2 選擇控制語句 switch

switch(表達式) //
表達式只能是字元型(char)或整形的(short int int long int)
 { case 常量表達式1: 語句1: breakcase 常量表達式2: 語句2: breakdefault: 語句3; break; }

將表達式的結果與case後的常量表達式的值一 一對比,相等就從當前case語句處進入執行,直到遇到break跳出switch語句。(表達式只能是字元型(char)或整形的(short int int long int))

案例二:鍵盤輸入1~7的數值判斷是星期幾

   int data =0;
    cout<<"請輸入一個0~7之內的整數:";
    cin>>data;
    if(data>7||data<1)
    {
        cout<<"輸入無效";
//      return;
    }
    switch(data)
    {
    case(1):
        cout<<"周一"<<endl;
        break;
    case(2):
        cout<<"周二"<<endl;
        break;
    case(3):
        cout<<"周三"<<endl;
        break;
    case(4):
        cout<<"周四"<<endl;
        break;
    case(5):
        cout<<"周五"<<endl;
        break;
    case(6):
        cout<<"周六"<<endl;
        break;
    case(7):
        cout<<"周日"<<endl;
        break;


    }

if 和switch的區別:①if語句表達式沒有所謂的類型限定,switch限定字元型或者整型 

 ②if語句能完成的事情包含switch語句做的事情  ③switch是對結果值的判斷,if是對錶達式真假的判斷

3 迴圈控制語句 for

for(初始化語句;迴圈條件;步進語句)
{  //複合語句
  迴圈體;
}

初始化語句:只會在進入for迴圈前執行一次初始化動作

迴圈條件:每次迴圈都會執行,只有當迴圈條件為真時才會進入迴圈體

步進語句:每次迴圈體執行完成後會自動執行步進語句

案例三:for迴圈求0~100的和

 //對0~100求和
    int i =0;
    int sum = 0;
    for(i=0;i<=100;i++)
    {
        sum+=i;
    }
    cout<<"和="<<sum<<endl;

for迴圈中,break:跳出所在的迴圈,continue:後邊的語句將不會執行,進入下一次迴圈。

迴圈嵌套迴圈

for(i=0;i<10;i++)
{
  for(j=0;j<10;j++)
  {
    語句一;
  }
}

先寫內層迴圈 然後再寫外層迴圈

案例四:輸出九九乘法表

int i=0;
    int j=0;
    //輸出九九乘法表
    for(i=1;i<=9;i++)
    {cout<<endl;
    for(j=1;j<=i;j++)
    {
        cout<<j<<" × "<<i<<" = "<<i*j<<"  ";
    }
    }

 

 

4 迴圈控制語句while

//1、外部實現初始化 2、內部實現步進語句
while(迴圈條件)
{  
  迴圈語句;
}

案例五:while實現1~100求和

//1到100求和
    int i = 1;
    int sum = 0;
    while(i<=100)
    {
        sum+=i;

i++;

    }
    cout<<"sum= "<<sum<<endl;
}

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 昨天木子問我能不能做自動刷某音短視頻,還要自動刷小哥哥,不是小哥哥就划走。 我心想,這女人真麻煩,怎麼這麼多事。 不好好工作天天想著小哥哥! 為了不得罪她,當時我就先答應了下來,然而實際上我把小哥哥變成了小姐姐,刷什麼小哥哥,多沒品味! 好了,話不多說,我們直接上代碼! 代碼實戰 首先導入需要使用的 ...
  • 前言 每次啟動SpringBoot項目時,總是能看到控制台列印了一串字元,隱約能辨認出是“Spring”,不知大家是否也好奇過是怎麼實現的,是直接列印固定的字元串,還是根據什麼演算法去生成的?於是閑暇無事,探究一番。 只想修改banner可以跳到文末查看 SpringBoot是怎麼列印的 Banner ...
  • 簡介 在現實世界中,我們常常需要等待其它任務完成,才能繼續執行下一步。Java實現等待子線程完成再繼續執行的方式很多。我們來一一查看一下。 Thread的join方法 該方法是Thread提供的方法,調用join()時,會阻塞主線程,等該Thread完成才會繼續執行,代碼如下: private st ...
  • 說起開源CMS,你會想到哪些呢?WordPress?DoraCMS?joomla? 今天再給大家推薦一個非常好用的開源CMS:Wagtail 如果您正在選型的話,可以瞭解一下Wagtail的特點: 基於Django構建,具有出色的文檔管理功能和友好的用戶界面。 提供了一個靈活且易於使用的頁面編輯器, ...
  • 學習網頁設計和網路編程可能是一種有趣而有意義的體驗,但需要時間,精力和練習.這裡有一些技巧可以幫助您更輕鬆地學習這些技能: 從基礎知識開始:在您深入研究高級主題之前,重要的是要有牢固的理解很重要基礎知識.首先學習HTML,CSS和JavaScript,這是網路的基礎語言. 使用線上資源:線上資源有許 ...
  • 概述 鎖是電腦協調多個進程或線程併發訪問某一資源的機制。在資料庫中,除傳統的計算資源(CPU、RAM、I/O)的爭用以外,數據也是一種供許多用戶共用的資源。如何保證數據併發訪問的一致性、有效性是所有資料庫必須解決的一個問題,鎖衝突也是影響資料庫併發訪問性能的一個重要因素。從這個角度來說,鎖對資料庫 ...
  • Java編程語言是由Sun微系統公司在20世紀90年代早期開發的。儘管Java主要用於基於internet的應用程式,但它是一種簡單、高效、通用的語言。Java最初是為運行在多個平臺上的嵌入式網路應用程式而設計的。它是一種可移植的、面向對象的解釋性語言。 Java是非常可移植的。相同的Java應用程 ...
  • VB.NET語言線上運行編譯,是一款可線上編程編輯器,在編輯器上輸入VB.NET語言代碼,點擊運行,可線上編譯運行VB.NET語言,VB.NET語言代碼線上運行調試,VB.NET語言線上編譯,可快速線上測試您的VB.NET語言代碼,線上編譯VB.NET語言代碼發現是否存在錯誤,如果代碼測試通過,將會 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...