C#語句1:選擇語句

来源:http://www.cnblogs.com/H2921306656/archive/2016/06/19/5598683.html
-Advertisement-
Play Games

語句是指程式命令,都是按照順序執行的。語句在程式中的執行順序稱為“控制流”或“執行流”。 根據程式對運行時所收到的輸入的響應,在程式每次運行時控制流可能有所不同。 註意,語句間的標點符號必須是英文標點,語句的結束標點是分號“;”。 語句可以嵌套,可以是以分號結尾的單行代碼,也可以是語句塊中的單行語句 ...


語句是指程式命令,都是按照順序執行的。語句在程式中的執行順序稱為“控制流”或“執行流”。 根據程式對運行時所收到的輸入的響應,在程式每次運行時控制流可能有所不同。

註意,語句間的標點符號必須是英文標點,語句的結束標點是分號“;”。

語句可以嵌套,可以是以分號結尾的單行代碼,也可以是語句塊中的單行語句。語句塊括在括弧 {} 中,並且可以包含嵌套塊。

語句的類型包括聲明語句,表達式語句,選擇語句,迴圈語句,跳轉語句,異常語句

1、聲明語句引:入新的變數或常量。 變數聲明可以選擇為變數賦值。 在常量聲明中必須賦值。

例如:

    int i = 0;//聲明變數i 並賦值,也可以不賦值。

double d;

“//”表示註釋一行,“/*…*/”可以註釋一段區域,註釋後的內容變綠。

2、表達式語句:用於計算值的表達式語句必須在變數中存儲該值。

例如:

    sum = i + j;//變數i和j在此之前必須先賦值。而且sum也需要聲明類型。

    int x = a + b; //或者在聲明的同時進行運算。

3、選擇語句:if, else, switch, case

4、迴圈語句:do, for, foreach, while

5、跳轉語句:break, continue, default, return

6、異常語句:try-catch-finally

一、選擇語句

(一)

if(表達式) //表達式返回值是True或False

{

}

說明:●表達式返回的是bool值;

●小括弧和花括弧後面不需要加分號。

例:int a = 15;

    bool b = a < 10;

    if (b)//條件,返回true或false

    {

       Console.WriteLine("a是10以內的數!");

    }

    Console.ReadLine();

(二)

if(表達式)

{

}

else

{

}

註:●else表示跟if的條件完全相反

    ●如果if沒有執行,else就必須執行,如果if執行了,else就一定不執行

例:1.輸入年齡,大於等於18顯示成年,否則顯示未成年。

Console.Write("請輸入您的年齡:");

            int age = int.Parse(Console.ReadLine());

            if (age >= 18)

            {

                Console.WriteLine("成年");

            }

            else//另外的其他的所有條件  age<18

            {

                Console.WriteLine("未成年");

            }

            Console.ReadLine();

2.你能跑過豹子麽?接收能或者不能。

第一種:

            Console.Write("你能跑過豹子麽?");

            string ss = Console.ReadLine();

            if (ss == "能")

            {

                Console.WriteLine("你比禽獸還禽獸!");

            }

            else if (ss == "不能")

            {

                Console.WriteLine("你連禽獸都不如!");

            }

            else

            {

                Console.WriteLine("輸入有誤!");

            }

第二種:

            Console.Write("你能跑過豹子麽?");

            string ss = Console.ReadLine();

            if (ss == "能" || ss == "不能")

            {

                if (ss == "能")

                {

                    Console.WriteLine("你比禽獸還禽獸!");

                }

                else

                {

                    Console.WriteLine("你連禽獸都不如!");

                }

            }

            else

            {

                Console.WriteLine("輸入有誤!");

            }

(三)

if(表達式)

{

}

else if

{

}

else if

{

}

...

else

{

}

各種情況只能走其中之一,若上面的都沒走,將執行else裡面的。

例:        Console.Write("請輸入您的性別:");

            string sex = Console.ReadLine();

            if (sex == "男")

            {

                Console.WriteLine("您是男性!");

            }

            else if (sex == "女")

            {

                Console.WriteLine("您是女性!");

            }

            else//sex!="男"   sex!="女"

            {

                Console.WriteLine("輸入錯誤!");

            }

 

            Console.ReadLine();

(四)

if(表達式)

{

    if(){}

else{}

}

else

{

    if(){}

}

if嵌套

例:        Console.Write("請輸入您的年齡:");

            int age = int.Parse(Console.ReadLine());

            if (age >= 0 && age <= 135)//人的正常年齡範圍

            {

                if (age <= 12)

                {

                    Console.WriteLine("你是兒童!");

                }

                else if (age <= 18)

                {

                    Console.WriteLine("你是青少年!");

                }

                else if (age <= 35)

                {

                    Console.WriteLine("你是青年!");

                }

                else if (age <= 60)

                {

                    Console.WriteLine("你是中年!");

                }

                else

                {

                    Console.WriteLine("你是老年!");

                }

            }

            else//不屬於正常人的年齡範圍

            {

                Console.WriteLine("你是屬王八的麽?");

            }

            Console.ReadLine();

註:錯誤!!!!!!!!!

            if()

            {}

            if(){}

            else{}

例題:1、輸入三個整數,xyz,最終以從小到大的方式輸出。利用嵌套。

            Console.Write("請輸入x:");

            int a = int.Parse(Console.ReadLine());

            Console.Write("請輸入y:");

            int b = int.Parse(Console.ReadLine());

            Console.Write("請輸入z:");

            int c = int.Parse(Console.ReadLine());

            if (a < b && a < c )

            {

                if(b<c)

                {

                    Console.WriteLine("三個數由小到大為" + a + b + c);

                }

                else

                {

                    Console.WriteLine("三個數由小到大為" +a+c+b);

                }

            }

            else if(b<a&&b<c)

             {

                 if(a<c)

                 {

                     Console.WriteLine("三個數由小到大為" + b + a + c);

                 }

                 else

                 {

                     Console.WriteLine("三個數由小到大為" + b + c +a);

                 }

             }

             else//c是最小的

             {

                 if (a < b)

                 {

                     Console.WriteLine("三個數由小到大為" + c + a + b);

                 }

                 else

                 {

                     Console.WriteLine("三個數由小到大為" + c + b + a);

                 }

             }

2、輸入學生姓名,輸入考試成績。若是100,【恭喜你***,滿分通過!】若是大於等於80小於100,【**,你很優秀,繼續保持!】若是大於等於60小於80,【**成績良好】大於等於50小於60,【**就差一點點,下次一定要至少及格!】小於50,【**你是笨蛋麽?】

            Console.WriteLine("請輸入您的姓名");

            string a = Console.ReadLine();

            Console.WriteLine("請輸入你的考試成績");

            double b = double.Parse(Console.ReadLine());

            if (b >= 0 && b <= 100)

            {

                if (b == 100)

                {

                    Console.WriteLine("恭喜你" + a + ",滿分通過");

                    Console.ReadLine();

                }

                else if (b < 100 && b >= 80)

                {

                    Console.WriteLine(a + ",你很優秀,繼續保持");

                    Console.ReadLine();

                }

                else if (b < 80 && b >= 60)

                {

                    Console.WriteLine(a + "成績良好");

                    Console.ReadLine();

                }

                else if (b < 60 && b >= 50)

                {

                    Console.WriteLine(a + "就差那麼一點點,下次一定要及格");

                    Console.ReadLine();

                }

                else//b<50

                {

                    Console.WriteLine(a + "你是笨蛋嗎?");

                    Console.ReadLine();

                }

            }

            else

            {

                Console.WriteLine("輸入錯誤");

            }

3、有一組函數:y = x (x<1);y = 2x -1  (1<=x<10);y = 3x-11  (x>=10)。括弧內是x的滿足條件。實現功能,隨意輸入一個x值,輸出y的值。

            Console.WriteLine("請輸入一個x的值:");

            double x = double.Parse(Console.ReadLine());

            if (x < 1)

            {

                Console.WriteLine(x);

            }

            else

            {

                if (x>=1&&x<10)

                {

                    Console.WriteLine(2*x-1);

                }

                else

                {

                    if (x>=10)

                    {

                        Console.WriteLine(3*x-11);

                    }

                }

                Console.ReadLine ();

4、輸入整數a和b,若a2+b2大於100,則輸出a2+b2的和,否則輸出兩數之和

            Console.Write("請輸入整數a:");

            int a = int.Parse(Console.ReadLine());

            Console.Write("請輸入整數b:");

            int b = int.Parse(Console.ReadLine());

            if ((a * a + b * b) > 100)

            {

                Console.WriteLine(a * a + b * b);

            }

            else//a*a+b*b<=100

            {

                Console.WriteLine(a + b);

            }

            Console.ReadLine();

5、相親過程:你有房子麽?你有錢麽?你有能力麽?【結婚吧】【先買房子在結婚】【先賺錢再買房子再結婚】都沒有【拜拜~~】利用if嵌套做相親過程

            Console.Write("你有房子麽?");

            string h = Console.ReadLine();

            if (h == "有")

            {

                Console.WriteLine("結婚吧");

            }

            else

            {

                Console.Write("你有錢麽");

                string j = Console.ReadLine();

                if (j == "有")

                {

                    Console.WriteLine("先買房子再結婚");

                }

                else

                {

                    Console.Write("你有能力麽");

                    string k = Console.ReadLine();

                    if (k == "有")

                    {

                        Console.WriteLine("先賺錢再買房子再結婚");

                    }

                    else

                    {

                        Console.WriteLine("拜拜~~");

                    }

                }

            }

            Console.ReadLine();

6、輸入一個年份,判斷是否是閏年(能被4整除卻不能被100整除的年份。a%4==0&&a%100!=0

世紀年份能被400整除的是閏年。a%400==0)

            Console.Write("請輸入一個年份:");

            int year = int.Parse(Console.ReadLine());

            if (year >= 0 && year <= 9999)

            {

                if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)

                {

                    Console.WriteLine("您輸入的年份是閏年!您輸入的年份是:{0}", year);

                }

                else

                {

                    Console.WriteLine("您輸入的年份是平年!您輸入的年份是:"+year);

                }

            }

            else

            {

                Console.WriteLine("輸入有誤!");

            }

            Console.ReadLine();

7、輸入年、月、日,判斷時間日期格式是否正確:

●年:0~9999

●月:1~12

●日:1.   1  3  5  7  8  10  12        31天

2.   4  6  9  11                        30天

3.   2      (1)閏年:29天    (2)平年:28天

(能被4整除卻不能被100整除的年份,a%4==0&&a%100!=0;世紀年份能被400整除的是閏年,a%400==0。)

            Console.Write("請輸入年份:");

            int year = int.Parse(Console.ReadLine());

            if (year >= 0 && year <= 9999)

            {

                Console.Write("請輸入月份:");

                int month = int.Parse(Console.ReadLine());

                if (month >= 1 && month <= 12)

                {

                    Console.Write("請輸入日:");

                    int day = int.Parse(Console.ReadLine());

                    if (day >= 1 && day <= 31)

                    {

                        if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12)

                        {

                            Console.WriteLine("輸入的日期格式正確!您輸入的日期為:{0}-{1}-{2}", year, month, day);

                        }

                        else

                        {

                            if (month == 4 || month == 6 || month == 9 || month == 11)

                            {

                                if (day <= 30)

                                {

                                    Console.WriteLine("輸入的日期格式正確!您輸入的日期為:{0}-{1}-{2}", year, month, day);

                                }

                                else

                                {

                                    Console.WriteLine("輸入有誤!");

                                }

                            }

                            else

                            {

                                if (day <= 28)

                                {

                                    Console.WriteLine("輸入的日期格式正確!您輸入的日期為:{0}-{1}-{2}", year, month, day);

                                }

                                else

                                {

                                    if (day == 29)

                                    {

                                        if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)

                                        {

                                            Console.WriteLine("輸入的日期格式正確!您輸入的日期為:{0}-{1}-{2}", year, month, day);

                                        }

                                        else

                                        {

                                            Console.WriteLine("輸入有誤!");

                                        }

                                    }

                                    else

                                    {

                                        Console.WriteLine("輸入有誤!");

                                    }

                                }

                            }

                        }

                    }

                    else

                    {

                        Console.WriteLine("輸入的日期有誤!");

                    }

                }

                else

                {

                    Console.WriteLine("輸入的月份有誤!");

                }

            }

            else

            {

                Console.WriteLine("輸入的年份有誤!");

            }

            Console.ReadLine();

8、ax*x+bx+c=0判斷方程是否是一元二次方程,和根的情況。根據公式判斷方程的根的狀況,公式的值大於零有兩個根,等於零有一個根,小於零沒有根。(首先明白什麼是一元二次方程,如果a等於0,方程式不是一元二次方程。用公式:代爾塔△=b2-4*a*c判斷根的情況:△<0則方程無解,△=0方程有兩個相等的實根,△>0方程有兩個不同的實根。求解則用到另一個公式:x=(-b±√b2-4ac)/(2*a)根號√需要用到函數 Math.Sqrt())

            Console.WriteLine("求方程式ax*x+bx+c=0");

            Console.Write("請輸入a=");

            double a = double.Parse(Console.ReadLine());

            Console.Write("請輸入b=");

            double b = double.Parse(Console.ReadLine());

            Console.Write("請輸入c=");

            double c = double.Parse(Console.ReadLine());

            double de = b * b - 4 * a * c;

            if (a == 0)//如果a是0,則不是一元二次方程

            {

                Console.WriteLine("不是一元二次方程");

            }

            else

            {

                Console.WriteLine("是一元二次方程");

                if (de >= 0)

                {

                    double x1 = (-b + Math.Sqrt(de)) / (2 * a);

                    double x2 = (-b - Math.Sqrt(de)) / (2 * a);

                    if (de > 0)

                    {

                        Console.WriteLine("方程式有兩個不同的實根");

                        Console.WriteLine("x1=" + x1.ToString() + "x2=" + x2.ToString());

                    }

                    else

                    {

                        Console.WriteLine("方程式有兩個相同的實根");

                        Console.WriteLine("x1=x2=" + x1.ToString());

                    }

                }

                else if (de < 0)

                {

                    Console.Write("方程式沒有實根");

                }

            }

            Console.ReadLine();//防止控制台閃退

 


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

-Advertisement-
Play Games
更多相關文章
  • ...
  • 本實例代碼實現了WinForm截屏保存為圖片,親測可行。界面截圖:下載:http://hovertree.com/h/bjaf/scjyuanma.htm以下代碼可以實際運行,在項目HoverTreeCSJ中運行成功。 轉自:http://hovertree.com/h/bjaf/76q5yeli. ...
  • 繼承、Overriding重寫、動態綁定、Sealed密封類、Object類、重載==和!= ...
  • svcutil.exe http://localhost:9065/ServiceDemo.svc?wsdl這將生成一個配置文件和一個包含客戶端類的代碼文件。 下麵我們就用這個是怎麼生成的:1,打開Visual Studio命令提示(Visual Studio Tools下麵)2,在打開的界面裡面輸 ...
  • WebClient位於System.Net命名空間下,通過這個類可以方便的創建Http請求並獲取返回內容。 一、用法1 - DownloadData 二、用法2 - OpenRead 推薦:http://www.cnblogs.com/roucheng/p/3521864.html ...
  • 很久沒有寫博客了。 這是放暑假中的第一篇博客,以後會多多更新!!! 這就是我寫的一個字體選擇器,界面如下: 本程式用到的技術比較簡單,僅僅是用了Font類的幾個方法和數據綁定而已。 首先建一個四行兩列的Grid,添加一個ComboBox,命名為fonts。然後在添加若幹個TextBlock和一個Te ...
  • 前幾天一個同事跑過來找我說,我們在廣告素材視頻這塊想做斷點續傳,就是這次某個視頻緩存到一半,下次不用重頭開始,可以在原來停留得位置開始繼續下載.以提供更好的用戶體驗。 同時說需要我們支持吐素材地址的業務介面告訴終端最後修改時間/文件簽名(md5),用這個用來判斷我當前要下的文件有沒有變化,同時告訴終 ...
  • 原文: "Adding Search" 作者: "Rick Anderson" 翻譯: "魏美娟(初見)" 校對: "謝煬(Kiler)" 、 "孟帥洋(書緣)" 、 "張仁建(第二年.夏)" 在本節中,你可以為 方法添加查詢功能,使其能夠根據電影的 genre 或 name 進行查找。 更新 方法 ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...