资讯动态

自学嵌入式第五天(C语言篇——选择结构)

发布时间:2026/10/20 1:51:37 来源:尧图企业网站定制
一、如何产生条件1.关系运算符做大小判断 , , , , , !结果关系是否成立。成立真1不成立假0再次印证表达式都是有类型的也是有值的2.逻辑运算符与 一假则假或|| 一真则真非 真假相对在系统中如何判断真假呢0为假非0为真。注意1从左边开始算2存在短路特性提高运算效率即在中左边为假时右边可以直接不算直接得结果||中左边为真时右边可以不算直接为真。eg二、选择结构1.if语句1单分支语法if 表达式{语句}语义:先判断表达式若为真则执行 if下的语句执行完程序继续往下若为假则表示if语句结束程序继续往下2多分支语法if 表达式{语句}else{语句}语义先判断表达式若为真则执行语句1执行完程序继续往下若为假则执行语句2执行完程序继续往下3阶梯分支语法if(表达式1) //没有分号{语句1}else if(表达式2) //没有分号{语句2}else if(表达式3){语句3}else if(表达式m){语句m}else{语句n}语义首先判断表达式1若为真则执行语句1执行完程序继续往下若为假则继续判断表达式2若表达式2为真则执行语句2执行完程序继续往下 若为假则继续判断表达式3表达式3为真则执行语句3执行完程序继续往下若为假则继续判断表达式m若表达式m为真则执行 语句m执行完程序继续往下若为假 执行 语句n 执行完程序继续往下。注意: 1. if 后面 没有分号2. else 后面如果需要继续判断 有if3. 单个if语句,没有单独的else语句, else 一定和一个if对应if (表达式){语句}4.if 和 else 配对关系:else 和离他最近的前面的if配对 (一般从最里面 往外面看)5.判断 多分支的判断 --- 问题必须是同一个问题下的多种情况三、分支结构1.三目运算符表达式1表达式2表达式3其执行逻辑相当于if-else语句即表达式1为真时执行表达式2表达式1为假时执行表达式3。2.switch语句Switch 表达式{case 常量表达式1语句breakcase 常量表达式2语句break... ...default 语句break}语法:首先求解表达式得到结果后用结果和 case 后面的常量结果做匹配 (看是否相等)匹配之后则执行 该 case 下的语句直到 遇到了 break 或 switch 语句的 右} (花括号)结束。注意: 1.表达式 必须是 整型表达式2.break 不是强制要有的但是一般使用时都有3.case 后面必须是一个常量表达式 否则会出现以下错误switch.c:15:2: error: case label does not reduce to an integer constantcase a1:^~~~4.case 这些都是标签标签 相当于给一句话 起的名字5.default 位置 可以在前面或者后面default 建议也把break加上四、循环结构1.构造循环的4个要素:1初始条件2结束条件3循环体4使循环趋于结束的语句(操作)2.goto 语句标号语句标号用标识符表示它的定名规则与变量名相同即由字母、数字和下划线组成 其第一个字符必须为字母或下划线。不能用整数来作标号。语句标号用标识符表示它的定名规则与变扯名相同即由字母、数字和下划线组成 其第一个字符必须为字母或下划线。不能用整数来作标号。结构化程序设计方法主张限制使用 goto语句因为滥用 goto 语句将使程 序流程无规律、可读性差。3.forfor 表达式1表达式2表达式3{语句}求解表达式1判断表达式2,2为假时for语句结束为真这执行for语句并执行表达式3然后继续判断表达式2... ...4.while语法:while (表达式{语句}语义:首先判断表达式若为真则执行语句继续判断表达式直到表达式为假while语句结束 。5.do-while 语句:语法:do{循环体语句}while(表达式);语义:先执行循环体语句再判断表达式若表达式为真则继续执行循环体语句再判断 表达式重复这个过程直到表达式为假为假时do-while 语句结束程序继续往下。注意:while和都while执行逻辑不同while --- 先判断 后执行do-while --- 先执行 后判断 do-while 的循环体至少会被执行一次6.总结for和while完全可以通用while和do-while大部分时间可以通用但是do-while是先执行一次在判断。7.break和continue(1)break是跳出本层循环。(2)continue是跳出本次循环。注意goto和if构成的循环不能用break和continue控制。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑