• C语言第七节流程控制


    1. 流程控制

    • 顺序结构:默认的流程结构。按照书写顺序执行每一条语句。
    • 选择结构:对给定的条件进行判断,再根据判断结果来决定执行哪一段代码。
    • 循环结构:在给定条件成立的情况下,反复执行某一段代码。

    1. 选择结构-if

    1. 简单使用

    • if (表达式) 语句1;
    • if(count>50) 开班; 上课;
    • if(表达式) 语句1; else 语句2;
    • f(count>50) 开班; else 不开班;
    • if(表达式) { }
    • if(count>50) {开班; 布置课室;} else {}
    • { }的作用域
    • if -else if-else
    • if(a==0) else if (a>0) else
    • 特点:只有一个括号会被执行
    • 复合条件
    • 上课时间的取值范围(9~12 || 14 ~17)
    • 陷阱
    • if(a!=0) { a不是0;} else {a是0;}
    • if (a); { }
    • if (a=0)
    • a == 0;
    • if (10) int a = 9;
    1. 习题

    2. 输入一个整数day代表星期几,根据day的值输出对应的星期几,比如day==1,就输出"星期一"
    3. 输入一个整数month代表月份,根据月份输出对应的季节。

    春季:3、4、5

    夏季:6、7、8

    秋季:9、10、11

    冬季:12、1、2

    1. 输入一个整数score代表分数,根据分数输出等级(A-E)(用两种方式)

    A:90~100

    B:80~89

    C:70~79

    D:60~69

    E:0~60

    1. 选择结构-switch

    1. 简单使用

    • switch(表达式) { case 数值1: break; … default: break;}
    • 举例

    int a = 10;

    switch (a) {

    case 0:

    printf("这是一个0");

    break;

    case 5:

    printf("这是一个5");

    break;

    case 10:

    printf("这是一个10");

    break;

    default:

    printf("什么也不是");

    break;

    }

    • 简述break的作用
    • 在case中定义变量
    1. if和switch的对比

    • 很多情况可以互换
    • if用得比较多,比较灵活,switch只能某个单值
    1. 习题

    用switch替代if实现if中的习题

    1. 循环结构-while

    2. 简单使用

    • 连续printf("俯卧撑")20次;
    • while(表达式) { }
    • continue:输出5次休息一下
    • break的使用:某次的时候停止循环
    1. 特点

    只有条件成立才会执行循环体

    1. 习题

    1. 提示用户输入一个正整数n,计算1+2+3+…+n的和
    2. 提示用户输入一个正整数n,计算1-2+3-4+5-6+…+n的和
      1. 陷阱

    while(条件);

    1. 循环结构-do while

    • 特点:一定会执行一次循环体
    • while和do while循环对比

    int i=0;
    while(i<0){
    i++;
    }

     

    int i=0;
    do{
    i++;
    } while(i<0);

     

    1. 循环结构-for

    1. 简单实用

    • 运行过程
    • 初始化语句等可以是多句(把printf放到for的括号中)

     

    1. for循环嵌套

    好友列表1

        好友1

        好友2

    好友列表2

        好友1

        好友2

    好友列表3

        好友1

        好友2

     

    1. 陷阱

    2. 死循环 for(;;);
    3. for循环体内部变量的作用域
    4. 作用域混淆

    for (int i = 0; i<5; i++) int a = 10;

     

    1. while循环和for循环的比较

    • 可以互换
    • for循环的变量可以及时回收

     

    1. 习题

      1. 提示用户输入一个正整数n,如果n5,就输出下列图形,其他n值以此类推

    1. 输出九九乘法表

     

    1. break和continue

    1. break

    • 使用场合:switch循环结构
    • 循环嵌套下的break

     

    1. continue

    • 使用场合:循环结构
    • 循环嵌套下的continue

    内容来源:传智播客

    全栈编程,专注编程技术。 luboke.com
  • 相关阅读:
    ES6实现小案例--自定义弹框
    ES6 字符串、数值与布尔值、函数参数的解构赋值
    ES6 对象的解构赋值
    ES6 数组的解构赋值
    CentOS7安装mysql后无法启动服务,提示Unit not found
    CentOS7安装MySQL报错,解决Failed to start mysqld.service: Unit not found
    redis修改密码
    redis入门
    如何在本地远程连接linux虚拟机上面的mysql
    Linux下彻底卸载mysql详解
  • 原文地址:https://www.cnblogs.com/codersay/p/4302648.html
Copyright © 2020-2023  润新知