iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 5
0

我們上次教了二進位運算符,我們也該結束所謂的算數了

順道補充假設一個數字(不是字串)開頭是0x那代表是16進位的


在電腦世界判斷是一種二元論的邏輯什麼意思呢,只有"真"與"偽"

真 true
偽 false
正是所謂的Boolean值(bool)

在我們正常邏輯下數學判斷只有五種

名稱 寫法
大於 >
大於等於 >=
小於 <
小於等於 <=
等於 ==(請記住是==不是=)

那假設我們有很多種情況呢像是 a必須等於5和b必須等於7才能成立呢

a == 5 && b==7

這段代碼會先執行a是否等於5在去執行b是否等於5在判斷兩個是否都是true
那還有哪些這種多種條件的邏輯運算子呢

名稱 寫法
AND &&
OR shift+enter上面的按鈕連續兩個

可空類型宣告方式資料型態**後面加個?**例如

int? = null; //預設值
int = 0; //預設值
string? = null; //預設值
string = ""; //預設值

其實可空類型還挺常使用的尤其是到物件導向時候

我們這次要教一個新的陳述句if ... else if ... else
請記住陳述句只能寫在 方法 或是 屬性 或是 事件 裡面不能寫在class裡面(簡單來說就是不能當作字段使用 因為根本不會執行到)

namespace ConsoleApp1
{
    class Program
    {
        static void Main()
        {
            int 我是第一個整數;
            我是第一個整數 = Console.ReadLine(); //輸入
            if (第一個整數 == 5)
            {
                Console.WriteLine("有點低"); //==的條件比較苛求因為是==所以優先
            }
            else if(第一個整數 > 5) //如果上面的不成立進行 第二次判斷是否>5
            {
                Console.WriteLine("太高了吧");
            }
            else //如果上面的不成立 直接進行
            {
                Console.WriteLine("太低了吧");
            }
            Console.ReadKey(); //這邊不用理會只是讓程序不要關閉
        }
    }
}

多條件判斷呢

int 我是第一個整數, 我是第二個整數;//同時宣告兩個整數
我是第一個整數 = Console.ReadLine(); //第一次輸入
我是第二個整數 = Console.ReadLine(); //第二次輸入
if (第一個整數 == 5 || 第二個整數 == 6)第一個或是第二個成立則執行if裡面的內容
{
    Console.WriteLine("你猜到了!");
}

假設今天判斷是兩個數字呢(巢狀迴圈 基本上只要是陳述句都可以巢狀且很常使用並且不限制幾層以下為兩層)

namespace ConsoleApp1
{
    class Program
    {
        static void Main()
        {
            int 我是第一個整數, 我是第二個整數;//同時宣告兩個整數
            我是第一個整數 = Console.ReadLine(); //第一次輸入
            我是第二個整數 = Console.ReadLine(); //第二次輸入
            if (第一個整數 == 5)//第一層
            {
                if (第二個整數 < 5) //如果外面的判斷成立進入裡面的判斷(屬於第二層)
                {
                    Console.WriteLine("還可以只是某方面太小");
                }
                else
                {
                    Console.WriteLine("還可以普普通通");
                }
            }
            else if(第一個整數 > 5) //第一層
            {
                if (第二個整數 < 5)
                {
                    Console.WriteLine("挺不錯的只是某方面太小");
                }
                else
                {
                    Console.WriteLine("阿~~~~~~~不行了");
                }
            }
            else
            {
                if (第二個整數 < 5)
                {
                    Console.WriteLine("完全不考慮");
                }
                else if (第二個整數 >= 5)
                {
                    Console.WriteLine("或許可以閉著眼睛嘗試");
                }
            }
        }
    }
}

到這邊基本上大家都會寫if與else if

接下來是三元條件式

string 我是字串 = "我很好";
int? 回傳的數字 = null;
回傳的數字 = 我是字串 == "我很好" ? 5 : 6; //如果判斷為true回傳5否則回傳6 請記住這是屬於有回傳值的判斷且不能寫在class裡面只能寫在方法那種的裡面

可空類型專屬判斷方式

int? 數字 = null;
int 新數字;
新數字 = 數字 ?? 5; 假設數字是null則回傳5如果數字不是null則回傳數字的值

下次估計教迴圈


上一篇
竟然還有二進位花惹發
下一篇
糟糕睡過頭錯過第五天 這次來講的是四大迴圈
系列文
高二生_學c#一個月之痛苦,悲哀,感動回憶錄(從基礎控制判斷 goto 物件導向(內含大量圖解))7
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言