zoukankan      html  css  js  c++  java
  • 02.程序控制结构

    结构化程序设计基础

    程序的控制结构(黑箱)

    单入口单出口的控制结构易于理解

    三种基本控制结构

    顺序结构

    由一组顺序执行的处理块组成,每个处理块可能包含一条或一组语句,完成一项任务。是最基本的算法结构。

    分支结构

    根据某一条件的判断结果,确定程序的流程,即选择哪一个程序分支中的处理块去执行。最基本的分支结构是二路分支结构

    循环结构

    根据某一条件的判断结果,反复执行某一处理块的过程。最基本的循环结构是当型循环。

    复杂控制结构

    控制结构可以嵌套,以构成更复杂的控制结构

    布尔数据

    枚举类型

    枚举类型的声明

    格式:enum 枚举名 {元素名1,元素名2,...,元素名n};

    例:enum MONTH{JAN,FEB,MAR,APR,MAY,JUN,JUL,AUG,SEP,OCT,NOV,DEC};

    枚举类型声明中的元素为枚举文字,不是变量

    枚举类型变量的定义

    例:MONTH month;

    枚举类型的意义

    将多个文字组织在一起,表达从属于特定类型的性质

    用户自定义类型

    自定义类型的格式

    格式:typedef 原类型标识 新类型名;

    例1:typedef int DWORD;

    自定义类型的性质

    新类型与愿类型相同,并未产生新类型,重新命名的自定义类型使程序更易理解

    若整数可以用来表示两类不同数据对象,使用自定义类型可以区分它们

    自定义类型不是简单的类型替换,虽然它们确实等同

    布尔类型

    bool类型

    取值:false、true

    bool量的定义

    定义:bool modified;

    赋值:modified = true;

    涉及到操作符的优先级:优先级从高到低排序

    逻辑非"!";小于"<"、不小于">="、大于">"、不大于"<="(同级);等于"="、不等于"!="(同级);逻辑与;逻辑或"||"

    if分支结构

    if分支结构的三种格式

    格式一:if(条件表达式) {语句序列}

    格式二:if(条件表达式) {语句序列1} else {语句序列2}

    格式三:if(条件表达式1) {语句序列1} else if(条件表达式2) {语句序列2} ... else {语句序列n}

    switch分支结构

    格式:

    switch(表达式)

    {

    case 常数表达式1: 语句序列1
    
    case 常数表达式2: 语句序列2
    
    .
    
    .
    
    .
    
    case 常数表达式n: 语句序列n
    
    default:默认语句序列
    

    }

    计算过程

    先计算表达式的值,依次与常数表达式比较,若相同则执行该分支(字句),否则转向default分支,最后退出switch语句

    特别说明

    switch后面的表达式必须为整型、字符型或枚举型;case后面必须为常量表达式,且各个case的值必须不同;若无default分支,且无匹配的case分支,则不执行;case分支中的语句可以有多条,不需要花括号

    break语句的目的:终止switch语句的执行。如果没有break语句,则程序会从指定的case分支开始,并在该分支结束后继续执行下去,除非switch语句结束,后面的其他case分支或default分支中的语句都会得到执行。原因是case字句中的常数表达式仅起到语句标号的作用,不是分支之间的分隔标记,case只起到了什么情况开始进入switch分支语句的作用。

    while循环结构

    while循环格式

    while (表达式) 循环体

    while循环执行流程

    先判断后执行:表达式为真时,执行一遍循环体(迭代一次),返回重新计算表达式的值以确定是否重复执行循环体;若表达式为假,则终止循环。为保证循环终止,循环体内应有能改变表达式值的语句。

    for循环结构

    递增递减表达式优先级非常高

    前缀递增递减

    格式:++变量名称;--变量名称;

    计算要诀:先递增递减,再参与运算

    例:设a为1,b=++a*3等价于a=a+1;b=a*3;

    a结果为2,b结果为6

    后缀递增递减

    格式:变量名称++;变量名称--;

    计算要诀:先参与运算,再递增递减

    例:设a为1,b=a++*3等价于b=a*3; a=a+1;

    a结果为2,b结果为3

    注意事项 操作数必须为变量,而不能为其他表达式,不要在复杂表达式中使用递增递减操作符,可能带来错误结果。

    for语句

    for循环格式

    for(初始化表达式;条件表达式;步进表达式) 循环体

    for循环执行流程

    先判断后执行:先执行初始化表达式,再计算条件表达式,并根据其结果决定是否执行一遍循环体(为真时执行),计算步进表达式的值(循环再次“初始化”),返回重新计算条件表达式的值以确定循环是否终止。初始化表达式只执行一次。

  • 相关阅读:
    ExtJs 4.0 ExtJs2.2 JavaScript
    C++中关于classview、resourceview、fileview
    BIN OBJ 区别
    数据编码
    多线程
    REST
    SQL Server 2005安装
    临时
    数据存储
    灰度直方图
  • 原文地址:https://www.cnblogs.com/bear-Zhao/p/13616195.html
Copyright © 2011-2022 走看看