bool型別
返回值:真:yes 假:no
bool
資料型別佔乙個位元組的記憶體空間,佔位符為%d。
計算機在識別時,yes就替換成1,no就替換成0。
bool是c語言中的布林型別,返回值為true和false
0為假,除0以為任何數字均為真
計算型別是位元組大小(sizeof(bool))
1 unsigned long size = sizeof(bool(其他型別...));2 printf("
size = %lu\n
",size);
34 unsigned long intsize = sizeof(int);
5 printf("
intsize = %lu\n
", intsize);
關係運算子
用來進行兩個數比較
關係運算子的結果有兩種,真或假,用bool型別變數來接收
1> > <
1int a = 5, b = 4, c = 3;
2 bool r3 = a < b < c; //
先運算 a < b,再和c比較
3 printf("
r3 = %d\n
", r3);
2> >= <=
符合》或者=任何乙個,結果為真
bool r4 = 5 >= 5;printf("
r4 = %d\n
", r4);
3> ==, !=
= 用來賦值,== 用來判斷兩個數是否相等
1 bool r6 = 5 == 4;2 printf("
r6 = %d\n
", r6);
34 bool r7 = 10 != 5;
5 printf("
r7 = %d\n
", r7);
邏輯運算子
邏輯與:&& 邏輯或:|| 邏輯非!
邏輯表示式的結果只有兩種,真或假,用bool型別的變數來接收
邏輯與, 並且,同時
表示式: 表示式1 && 表示式2
運算規則:表示式1和表示式2同時為真,整個邏輯表示式的結果為真,否則為假(一假即假)
1int a = 10;
2int b = 20;
3 bool r1 = (a < b) && (b == 20);
4 printf("
r1 = %d\n
", r1);
短路現象:表示式1的結果為假,整個邏輯表示式的結果為假,表示式2將不再執行
1 bool r3 = (a > b) && (a++);2 printf("
r3 = %d\n
", r3);
3 printf("
a = %d\n
", a);
邏輯或或者,不強調同時
表示式: 表示式1 || 表示式2
運算規則:表示式1或者表示式2任何乙個為真,整個邏輯表示式的結果為真,只有當表示式1和表示式2同時為假,整個邏輯表示式結果為假(一真即真,全假則假)
1int a = 10;
2int b = 20;
3 bool r1 = (a > b) || (b == 20);
4 printf("
r1 = %d\n
", r1);
56 bool r2 = (b < a) || (a != 10);
7 printf("
r2 = %d\n
", r2);
短路現象:當表示式1的結果為真,整個邏輯表示式的結果為真,表示式2將不再執行
1 bool r3 = (a < b) || (a++);2 printf("
r3 = %d\n
", r3);
3 printf("
a = %d\n
", a);
邏輯非取反
bool r4 = no;bool r5 = !r4;
printf("
r5 = %d\n
", r5);
if語句
第一種形式
if (條件表示式)
條件表示式為真,執行分支語句,如果為假,執行分支語句下面的內容
練習:定義乙個變數age,從鍵盤輸入值,如果age大於等於18,輸出」你已經成年了「。
1int age = 0;
2 printf("
請入年齡:
");3 scanf("
%d", &age);
4if (age >= 18)
第二種形式
if (條件表示式) else
如果條件表示式為真,執行語句1,否則執行語句2
練習:輸入乙個年份,判斷該年份是否是閏年?如果是閏年,則輸出該年是閏年,否則輸出該年不是閏年。
(能被400整除) || ((能被4整除) && (不能被100整除))
1int year = 0;
2 printf("
請輸入乙個年份\n
");3 scanf("
%d", &year);
45 bool r1 = year % 400 == 0;
6 bool r2 = year % 4 == 0;
7 bool r3 = year %100 != 0;89
if (r1 || (r2 && r3)) else
第三種形式
if (條件表示式1) else if (條件表示式2) else
練習:從鍵盤輸入乙個字元,如果是數字列印 this is digital,如果是大寫字母,列印 this is capital letter,如果是小寫字母,列印 this is letter,如果是其他字元,列印 other。
1char ch = 0;
2 printf("
請輸入乙個字元\n
");3 scanf("
%c", &ch);45
if (ch >= '
0' && ch <= '
9') else
if (ch >= '
a' && ch <= '
z') else
if (ch >= '
a' && ch <= '
z') else
條件運算子 ? :
條件表示式? 表示式1 : 表示式2;
如果條件表示式為真,執行表示式1,否則執行表示式2
5、switch...case分支
switch (整型或者字元型的表示式)
case 值2:
......
default:
先執行switch後的表示式,根據表示式的值查詢想要的case分支,並執行分支語句
default:預設分支,如果沒有找到對應的分支,執行default分支
break:結束當前的case分支
練習:從控制台輸入1~4,對應打出春夏秋冬的英文詞。
1int value = 0;
2 printf("
請輸入1~4的整數\n
");3 scanf("
%d", &value);45
switch (value)
IOS開發之C基礎 分支及結構
c語言流程結構 順序結構,分支結構,迴圈結構 1.順序結構 程式從上往下依次執行就叫順序結構 2.分支結構 程式有選擇的執行某段 或者不執行某段 3.迴圈結構 程式重複的執行某段 分支結構之if分支 if語句 if單分支 語法 if 表示式 語義 如果表示式的結果為真,則執行語句塊,否則不執行語句塊...
IOS開發 OC語言 概述
1 跟 include一樣,拷貝檔案的內容 2 可以自動防止檔案的內容被重複拷貝 nsobjcruntime.h中有nslog函式的宣告 1 主標頭檔案 最主要的標頭檔案,名字一般跟框架名稱一樣,包含了框架中的所有其他標頭檔案 2 foundation框架的主頭檔名稱就是foundation.h 3...
IOS開發 OC語言 分類
分類的作用 在不改變原來類內容的基礎上,可以為類增加一些方法 使用注意 1.分類只能增加方法,不能增加成員變數 2.分類方法實現中可以訪問原來類中宣告的成員變數 3.分類可以重新實現原來類中的方法,但是會覆蓋掉原來的方法,會導致原來的方法沒法再使用 4.方法呼叫的優先順序 分類 最後參與編譯的分類優...