// 布尔类型:
// 1 . c89没有布尔类型. C工程支持C89// C99有布尔类型,oc工程支持// 2 . 俩种数值 真 假// bool true真 false假 C语言// BOOL YES真 NO假 oc语言// 3 . 真假的表示// C语言 非0即为真// oc语言 YES定义为1, NO定义为0// 4 . 输出转义字符%d// 5 . 作用于分支结构循环结构的判断 // BOOL a = YES;// BOOL b = NO;// printf("a= %d\n",a);// printf("b= %d\n",b);// #pragma mark ------关系运算符------/* 1 . 用于进行俩个输比较 2 . 关系运算符的结果只有俩种;真.假;使用BOOL类型变量接受 3 . 关系表达式的组成:由变量,常量,关系运算符组合而成. BOOL a1 = 5 < 3;//真 printf("%d\n",a1); int c,oc; scanf("%d%d",&c,&oc); BOOL d = c > oc; printf("%d\n",d); BOOL a1 = 2 <= 3; printf("%d\n",a1); int b,c; printf("输入俩个数判断是否相等"); scanf("%d%d",&b,&c); BOOL a2 = b == c; printf("%d\n",a2); */ // 等于 不等于 // == 用于判断俩边是否相等,左右俩侧可以是变量也可以是长亮 // = 用于赋值 左侧只能是变量 // 浮点型数不能用 == 比较是否相等 (小数存在四舍五入,不精确) /* float a = 0.123456789; float b = 0.123456789123; BOOL c = a == b; printf("%d\n",c); int a = 3; int b = 4; BOOL c = a != b; printf("%d\n",c); */ #pragma mark ------逻辑运算符--------/* 1 . 逻辑运算符的结果只有俩种;真.假;使用BOOL类型变量接受 2 . 逻辑表达式的组成:由变量,常量,关系运算符组合而成. 逻辑 && 一假即假 1. 逻辑与表达式: 表达式1 && 表达式2 2. 运算规则: (1)先执行表达式1 ,再执行表达式2 (2)表达式1和表达式2同时为真,结果为真;否则结果为假;*/// int a = 10;// int b = 12;// BOOL c = a < b && b > 3;// printf("%d\n",c);// 3 . 短路现象 表达式1的结果为假,不再执行表达式2的值//// BOOL d = a < b && a++;// printf("d = %d,a = %d\n",d,a);/* 逻辑或 || 一真即真 1. 逻辑或表达式: 表达式1 || 表达式2 2. 运算规则: (1)先执行表达式1 再执行表达式2 (2)表达式1和表达式2有一个为真或者是俩个都为真,结果为真,其他情况,结果为假.*//* int a = 3; int b = 4; BOOL c = a > b || b < 2; printf("%d\n",c);// 3.短路现象 BOOL d = a < b || a++; printf("d = %d a = %d\n",d,a); 逻辑非 ! 1 . 逻辑非,取反运算 2 . 运算规则: 对真假取反 BOOL a = YES; BOOL b = !a; printf("a = %d\n",a); printf("b = %d\n",b); 运算符优先级 ! > 算数运算符 > 关系运算符 > 逻辑运算符 > 赋值运算符*/ #pragma mark -------if控制语句--------/* 1 . 程序设计的三种结构: 顺序,分支,循环 (1)顺序: 程序中的语句按照先后顺序执行 (2)分支: 又称为选择;通过一个判断,选择执行某个分支语句.例如: 又有女朋友就买房结婚,否则就租房打光棍 (3)循环: 满足某个条件的时候,重复执行某个代码段 if控制语句的作用: 通过判断,选择执行某个分支语句. 1 . if第一种形式 if(条件表达式) { 语句 } 运行逻辑:如果表达式为真,执行()内的语句,如果为假,跳过(),执行后面. int a; printf("输入你考了几分,太低就别输了\n"); scanf("%d",&a); if (a >= 90) { { printf("小伙真帅\n"); } if (a >= 60 && a < 90) { printf("一般般,还得努力\n"); } } else printf("你一点也不帅\n"); char a; scanf("%c",&a); if (a == 'm') { printf("男屌丝\n"); } else printf("小萝莉\n"); *//* // 练习 2 //输⼊入⼀一个年份,判断该年份是否是闰年?如果是闰年,则输出该年 //是闰年,否则输出该年不是闰年。 //提⽰示: //闰年:能被400整除或者能被4整除,但是不能被100整除。#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { int year; scanf("%d",&year); if(year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) { printf("是闰年\n"); } else printf("不是闰年\n"); return 0; }*//* // 练习 3 // 从键盘输⼊入⼀一个字符,如果是数字打印this is digital,如果是⼤大写字 ⺟母,打印this is capital letter,如果 // 是⼩小写字⺟母,打印this is letter, 如果是其他字符,打印other。 // Created by lanou3g on 15/11/18. // Copyright © 2015年 wang. All rights reserved. // #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { char x; scanf("%c",&x); if ('0'<= x && x <= '9') { printf("this is digital\n"); } else if(x >= 'a' && x <= 'z') { printf("this is letter\n"); } else if(x >= 'A' && x <= 'Z') { printf("this is capital letter\n"); } else { printf("other\n"); } return 0; }*//* 表达式1 :表达式2 运算规则:如果表达式真,整个表达式的值为表达式1的值,为假,则整个表达式的值为表达式2的值 int a = 3; int b = 4; int c = a > b ? a : b; printf("%d\n",c); // 练习 找最大值 int a,b,c; printf("输入俩个数"); scanf("%d%d",&a,&b); c = a > b ? a : b; printf("最大值为%d\n",c); int a,b,c,d; printf("输入三个数"); scanf("%d%d%d",&a,&b,&c); d = a > b ? a : b; d = c > d ? c : d; printf("最大值为%d\n",d);*/ #pragma mark ------------seitch....case --------------/* 多分支语句 作用:提供多个分支,功能类似if-else级联拭,代码可读性强. 语法: (1)_switch后面是 整型或者字符型表达式 (2)_case后面是整型或字符型常量 (3)_case后面需要添加{} (4)_break case和default 默认都跟随一个break语句 用于结束某个case,然后救赎switch控制语句,执行switch之后的语句 switch(整型表达式) { case 值1:{语句1; break;} case 值2:{语句2; break;} ... case 值3:{语句n; break;} default:{语句n + 1;break;} } 运算逻辑: (1) 如果表达式和某个case常量相等,执行这个case后面的语句 (2) 如果没有表达式和某个case常量相等,执行defaut后面的语句. char a; printf("输入一个字符"); scanf("%c",&a); switch (a) { case 'm': { printf("Man\n"); break; } case 'f': { printf("Women\n"); break; } default: printf("春哥\n"); break; }*/ #pragma mark ----------枚举法------------/* 1 枚举属于构造类型 2 一组具有名称的 整型常量 3 目的:提高代码的可读性. 标示符:人类可以识别. 数字: 计算机可以识别 4 语法: enum 枚举变量名 { 标识符1, 标识符2, ... }; 5 定义枚举类型写在函数外面 6 枚举类型变量每次只能赋一个数值,大S数值包含多种 enum ColorType { yellow, //默认从0开始 red, blue, green }; enum ColorType color1 = yellow; enum ColorType color2 = red; printf("%d\n",color1); printf("%d\n",color2); //定义枚举类型,使用9001~9004分别表示4个部门的分机号,四个部门依次是 市场部,教务部,教学部,就业部 enum DepartmentType { market = 9001, acdemic = 9002, education = 9003, employment = 9004 }; enum DepartmentType department1 = market; enum DepartmentType department2 = acdemic; enum DepartmentType department3 = education; enum DepartmentType department4 = employment; printf("%d\n",department1); printf("%d\n",department2); printf("%d\n",department3); printf("%d\n",department4); */