1、 BOOL类型

  返回值:真:YES  假:NO
  BOOL数据类型占一个字节的内存空间,占位符为%d。
  计算机在识别时,YES就替换成1,NO就替换成0。
  bool是C语言中的布尔类型,返回值为true和false
  0为假,除0以为任何数字均为真 
  计算类型是字节大小(sizeof(BOOL))   
         unsigned long size = sizeof(BOOL(其他类型...));
printf("size = %lu\n",size);   
    
unsigned long intSize = sizeof(int);
printf("intSize = %lu\n", intSize);

2、 关系运算符

  用来进行两个数比较
  关系运算符的结果有两种,真或假,用BOOL类型变量来接收

  1> > <    

         int a = , b = , c = ;
BOOL r3 = a < b < c; // 先运算 a < b,再和c比较
printf("r3 = %d\n", r3);

  2> >=  <=

    符合>或者=任何一个,结果为真 

        BOOL r4 =  >= ;
printf("r4 = %d\n", r4);

  3> ==, !=

    = 用来赋值,== 用来判断两个数是否相等   

         BOOL r6 =  == ;
printf("r6 = %d\n", r6); BOOL r7 = != ;
printf("r7 = %d\n", r7);

3、逻辑运算符

  逻辑与:&&  逻辑或:||   逻辑非 !
  逻辑表达式的结果只有两种,真或假,用BOOL类型的变量来接收
    
  逻辑与, 并且,同时
  表达式: 表达式1 && 表达式2
  运算规则:表达式1和表达式2同时为真,整个逻辑表达式的结果为真,否则为假(一假即假)

         int a = ;
int b = ;
BOOL r1 = (a < b) && (b == );
printf("r1 = %d\n", r1);

  短路现象:表达式1的结果为假,整个逻辑表达式的结果为假,表达式2将不再执行

         BOOL r3 = (a > b) && (a++);
printf("r3 = %d\n", r3);
printf("a = %d\n", a);

  逻辑或 或者,不强调同时
  表达式: 表达式1 || 表达式2
  运算规则:表达式1或者表达式2任何一个为真,整个逻辑表达式的结果为真,只有当表达式1和表达式2同时为假,整个逻辑表达式结果为假(一真即真,全假则假)

          int a = ;
int b = ;
BOOL r1 = (a > b) || (b == );
printf("r1 = %d\n", r1); BOOL r2 = (b < a) || (a != );
printf("r2 = %d\n", r2);

  短路现象:当表达式1的结果为真,整个逻辑表达式的结果为真,表达式2将不再执行    

         BOOL r3 = (a < b) || (a++);
printf("r3 = %d\n", r3);
printf("a = %d\n", a);

  逻辑非  取反

        BOOL r4 = NO;
BOOL r5 = !r4;
printf("r5 = %d\n", r5);

4、if语句

   第一种形式

    if (条件表达式) {
          分支语句;
       }
  条件表达式为真,执行分支语句,如果为假,执行分支语句下面的内容

  练习:定义一个变量age,从键盘输入值,如果age大于等于18,输出”你已经成年了“。

         int age = ;
printf("请入年龄:");
scanf("%d", &age);
if (age >= ) {
printf("你已经成年了");
}

  第二种形式

    if (条件表达式) {
          语句1;
       } else {
          语句2;
       }
  如果条件表达式为真,执行语句1,否则执行语句2

  练习:输入一个年份,判断该年份是否是闰年?如果是闰年,则输出该年是闰年,否则输出该年不是闰年。

  (能被400整除) || ((能被4整除) && (不能被100整除))

      int year = ;
printf("请输入一个年份\n");
scanf("%d", &year); BOOL r1 = year % == ;
BOOL r2 = year % == ;
BOOL r3 = year % != ; if (r1 || (r2 && r3)) {
printf("是闰年\n");
} else {
printf("不是闰年\n");
}

  第三种形式

    if (条件表达式1) {
          语句1;
       } else if (条件表达式2) {
          语句2;
       } else {
          语句4;
       }

  练习: 从键盘输入一个字符,如果是数字打印 this is digital,如果是大写字母,打印 this is  capital letter,如果是小写字母,打印 this is letter,如果是其他字符,打印 other。

      char ch = ;
printf("请输入一个字符\n");
scanf("%c", &ch); if (ch >= '' && ch <= '') {
printf("this is digital\n");
} else if (ch >= 'A' && ch <= 'Z') {
printf("this is capital letter\n");
} else if (ch >= 'a' && ch <= 'z') {
printf("this is letter\n");
} else {
printf("other\n");
}

  条件运算符 ? :
    条件表达式? 表达式1 : 表达式2;
    如果条件表达式为真,执行表达式1,否则执行表达式2

5、switch...case分支

  switch (整型或者字符型的表达式) {
        case 值1(整型或者字符型的常量): {
            语句1;
            break;
         }
        case 值2: {
            语句2;
            break;
        }
        ......
        default: {
            语句3;
            break;
        }

  先执行switch后的表达式,根据表达式的值查找想要的case分支,并执行分支语句
     default:默认分支,如果没有找到对应的分支,执行default分支
     break:结束当前的case分支

  练习:从控制台输入1~4,对应打出春夏秋冬的英文词。

      int value = ;
printf("请输入1~4的整数\n");
scanf("%d", &value); switch (value) {
case :
printf("Spring\n");
break;
case :
printf("Summer\n");
break;
case :
printf("Autumn\n");
break;
case :
printf("Winter\n");
break;
default:
break;
}

iOS学习02C语言分支结构的更多相关文章

  1. iOS学习03C语言循环结构

    1.while循环 while (循环条件) {        循环体: } // 1.定义循环变量 ; // 2.循环条件 ) { // 3.循环体 printf("%d\n", ...

  2. 【C语言学习】-02 分支结构

    本文目录: 一.BOOL布尔类型 二.关系运算符 三.逻辑运算符 四.if语句 五.枚举类型 六.switch语句 一.BOOL布尔类型 BOOL数据类型,是一种表示非真即假的数据类型,布尔类型的变量 ...

  3. C语言基础总结 分类: iOS学习 c语言基础 2015-06-11 10:08 23人阅读 评论(0) 收藏

    //欲练此功必先自宫!!!     //第一天:C语言的基础     //进制     //2进制, 10进制, 8进制, 16进制     //注:8进制数前加0, 16进制数前加0x        ...

  4. C语言分支结构之if else语句

    前面我们看到的代码都是顺序执行的,也就是先执行第一条语句,然后是第二条.第三条……一直到最后一条语句,这称为顺序结构. 但是对于很多情况,顺序结构的代码是远远不够的,比如一个程序限制了只能成年人使用, ...

  5. iOS学习之C语言分支结构

    一.BOOL类型 返回值:真:YES   假:NO 定义一个布尔类型的变量 YES == 1, NO == 0 计算机在识别时,YES就替换成1,NO就替换成0 BOOL isGirl = YES; ...

  6. iOS学习06C语言结构体

    1.结构体的概述 在C语言中,结构体(struct)指的是一种数据结构,是C语言中构造类型的其中之一. 在实际应用中,我们通常需要由不同类型的数据来构成一个整体,比如学生这个整体可以由姓名.年龄.身高 ...

  7. C语言基础:结构体 分类: iOS学习 c语言基础 2015-06-10 21:47 28人阅读 评论(0) 收藏

    结构体:是一种用户自定义的数据类型 结构体定义 struct 结构体名 {     成员类型1  成员变量名1;     成员类型2  成员变量名2;      -. }; typedef   原类型 ...

  8. C语言基础:分支语句和常见运算符 分类: iOS学习 c语言基础 2015-06-10 21:44 13人阅读 评论(0) 收藏

    if(判断条件){ 执行语句; }else if(判断条件){ 执行语句; } switch (整型表达式){  case 值1: 执行语句; break; case 值2: 执行语句; break; ...

  9. iOS学习05C语言函数

    本次主要是学习和理解函数,函数树状图如下: 1.函数的声明和定义 函数定义的四要素分别为: 返回值类型 :函数的结果值类型,函数不能返回数组. 指定返回类型是void类型说明函数没有返回值. 函数名 ...

随机推荐

  1. python基础——匿名函数

    python基础——匿名函数 当我们在传入函数时,有些时候,不需要显式地定义函数,直接传入匿名函数更方便.  在Python中,对匿名函数提供了有限支持.还是以map()函数为例,计算f(x)=x2时 ...

  2. ASCII 非打印字符

    项目出了问题,因为AscII非打印字符的原因,后来找了一下啊ASCII的非打印字符,总共有31个,然后我们直接全部替换成问号了. 解决方式为先找到非打印字符,这是我从网上找的非打印字符表: 进制 十六 ...

  3. JS ——window.onload与$(document).ready()

    我们常常在页面加载完成以后做一些操作,比如一些元素的显示与隐藏.一些动画效果.我们通常有两种方法来完成这个事情,一个就是window.onload事件,另一个就是JQuery的ready()方法.那么 ...

  4. 2.3顺序容器-deque

    deque(双向队列) 1) *    :包含deque头文件 **  :deque也是一个可变长数组,适用于vector的操作都适用于deque ***:对比vector的优势在于在头部存取元素可以 ...

  5. postgresql集群方案参考答案

    PostgreSQL配置Streaming Replication集群 http://www.cnblogs.com/marsprj/archive/2013/03/04/2943373.html p ...

  6. 三、jQuery--jQuery插件--jQuery插件——Validation Plugin

    简介: 客户端验证:现代网站填写表单时,几乎一定会采用的方式. 优点:1.可以减少服务器压力 2.缩短用户等待时间和提升用户体验 jQuery有很多表单验证插件:https://plugins.jqu ...

  7. 与你相遇好幸运,Sail.js创建.sailsrc文件

    在项目根目录下创建.sailsrc文件 {  "generators": {    "modules": {}  },  "hooks": ...

  8. 14.模板方法模式(Template Method)

    using System; namespace ConsoleApplication7 { class Program { /// <summary> /// 模板方法模式——在一个抽象类 ...

  9. 《Linux私房菜》笔记和问题记录

    鸟哥的Linux私房菜简体首页 对Linux的学习侧重于基本命令和运维相关的部分,最后章节的测试问题不错. 1.VIM程序编辑器 1.所有的Linux都会内建VI:很多软件的编辑接口都会主动呼叫VI: ...

  10. linux中创建gpio节点

    转自:http://blog.chinaunix.net/uid-29165999-id-4296162.html #define GPIO_MAJOR 230 // major device NO. ...