找回密码
 注册
关于网站域名变更的通知
查看: 308|回复: 3
打印 上一主题 下一主题

单片机C语言的流程控制语句

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-5-24 09:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
/ E# _8 M& z  M. Z
1.
6 }+ _, a% c0 l1 m2 N6 lif(条件表达式)
' z  O  F2 ^6 f7 x; ^$ t! R{
% g/ q/ e( j# I; w        动作13 L# n) }+ v8 `: M/ D  I
}$ Q3 s9 r4 r- j4 R( X! C/ B
//如果条件表达式的值为真,执行动作1。否则跳过往下执行程序
1 D7 o$ _; e0 p, @
9 `: N9 N! b' o+ @
2 q4 M. ^' m+ j9 X2 |7 F& ]- K
6 z5 V# z/ N3 X4 F2.
8 n2 V5 V- b+ `  [0 Mif(条件表达式)
) C" ~) d/ ~  G$ {% e# z; ~6 ?{
' _5 R/ ^0 u9 _5 x- P+ x9 h  D        动作19 g+ r" |" A( I: f
}
8 Q6 }1 A: r0 }else# [5 @& P4 n: f$ Z
{
3 C/ y; }1 K" O/ T# R9 q. b( N4 [        动作2
( ?9 a5 c) q+ P# ~. ?/ N}1 Z5 w( g4 h% N
//如果条件表达式的值为真,执行动作1,否则执行动作2.
3 v  l1 {$ Z) @* p( e* g
+ g5 T! R" e/ }4 [5 M: Y3.+ F( Y& L  Q: D- \6 R) v$ W
if(条件表达式1)
# `, Y# K  T; V8 h( P1 ]" @{" a. |( ^9 Z8 Z
        if(条件表达式2)9 z* ]# q1 d0 C0 J% x
        {7 d4 K8 x$ g/ Z- }- E& I  r6 w
                if(条件表达式3). E. Z) A$ G9 }+ r7 Z6 d
                {! O# c2 [$ e. n
                        动作1//表达式1,2,3都为真,执行动作1
  ^/ n6 k8 f) [                }
0 x" {  J2 n; S( M                else2 Y8 S& T) u: k, N" v5 `
                {
, p3 m8 C* R3 A' [; s0 i  L                        动作2//表达式1,2为真,3为假,执行动作2
! @. g4 s# k5 e0 T+ S: i) }& O                }, b$ B" h, T/ w9 h6 x) M; p
        }
& A/ E  L: \: ~% p9 C' {" |1 K7 B, V        else
9 i# ^* q; D- l, G        {* D8 d: @7 Q- U; c7 \, I
                动作3% P" N& E# B- Q' `) _
        }
# ^" A3 n8 H. s9 ~}5 N9 w: P: ?: C! ~& D1 A9 A/ r
else) j3 U( e1 ?: a5 w! e- |/ e1 v
{4 d4 t& g4 n" b: w& o2 E) ?
        动作4& }' l( R0 |: c* q( `+ ?" a. x- j
}, @, `: Q' h& }4 X

, k- {; Y7 N  b4 i. D6 R( {) C" ]$ h* P! F- B4 Y) O5 [- N' V5 j
//动作3表达式1为真,表达式2为假执行7 s" N! H. H3 F3 v* n4 s3 p- T
//动作4表达式1为假,时执行
% |) b, s8 y& n9 N5 I% [
: ]- X" q: c" C( J% B/ ?3 ]% d/ S) b1 X1 H. S" ~
4.
% A/ q) v6 W  u% d5 @if(条件表达式1)
* f& s2 \3 K; N6 o' N: r1 t8 l+ X{
- o2 ~2 }  P9 l" V, F- ~& [        动作1//条件表达式1成立执行9 E8 S7 G* J: T) M% H
}
5 ]! F$ f: y; K$ O7 B$ W* |else if (条件表达式2)9 R1 c( ~- b4 v, N9 \9 D
{
! j- |. ^( M8 `        动作2//条件表达式1不成立,条件表达式2成立执行5 ^- H; K( X# u- r! _; I* j( H
}
/ c( i9 [6 e* q4 W* ]else if(条件表达式3)
+ l: g0 s6 Z+ o; a* a# R$ ]{  o6 U* k3 ~( s5 O7 c/ q& I
        动作3//条件表达式1,2不成立,条件表达式3成立执行, o5 s# F8 L6 b4 E
}
* K+ m& d0 D1 S) e$ T+ D3 U! ~  c( delse
+ p" ?8 Q2 b! {; K- n' `) m$ y: E{
8 |2 Z5 B+ s& w8 f7 _- ?        动作4//条件表达式1,2,3都不成立,执行
2 q& e7 \3 M( I) E! y' v: p$ n+ U}
  Q0 B; o* n- h) ^5 }
0 P  M, E! g( o9 i) H1 I# U! \4 ]+ M: d, {0 o- i; p: q
4.switch case 语句- h- {: \, f: {$ o5 ~2 L& t, F4 K

3 f# _+ t7 s! E8 r; O/ ?7 O! Dswitch (条件表达式)//条件表达式必须是整数或字符
/ B' m: q& f- t* @{& W8 z8 x6 v+ a2 ~) c
        case 条件值1: //条件值需要是常量,不能是变量" j1 o0 D# K0 S  g2 _0 _0 h# A
        {
! N. h: d% b# z/ l* x                动作1# s) P. `5 [4 s
                break;//必须用break;语句跳出
4 U: b& ?. N6 W1 L3 f0 l        }
+ u( m5 P  G/ t& W6 {0 R        case 条件值2:
. h9 s9 a$ a# s0 C        {, ~. B7 [  r0 N& n- g
                动作2
* F5 N5 @$ {* D9 N& f: T- L0 l9 Q                break;
6 b- Q, o. ^7 Q/ e6 G" g        }
/ |$ N! q6 i. l+ B; F# m' c4 {, F. |        case 条件值3:, Z3 e7 g* D$ r# }
        {
7 T" u' D2 {  }: S) h4 z% V7 y                动作3- _) [% Y8 t( T- ]+ X* ]! {8 Q
                break;
! r6 O3 ~! a2 d% Z        }* b" k3 `/ h" R6 L
        default ://所以条件都不匹配时执行缺省语句
# y) {. }3 w5 @2 x& A3 x( d6 j        {
' d8 p8 [! D; H- P$ {' a                动作4' x  N1 r. q6 d9 r: `% d
                break;2 S8 b7 A% W' X/ N
        }) _8 H2 k7 i  Q/ G1 G
}
5 r' b1 [5 |9 O
8 X8 h% |6 u! U: G& J3 M7 G5.while语句
! v0 ]8 Z! j$ a3 X8 b( j( I% a5 d0 z, b2 P' {+ `
while(条件表达式)//先测试条件表达式的值为真时,执行循环内的动作,做完后又跳% }* y+ V' ~; G, S4 E2 S
                 //回测试条件表达式,如此反复直到条件表达式值为假,退出循环。
$ e0 L5 y# e! A; C* N7 y1 Z/ W{
' n' v. L! Y" Y! M+ q        动作4 K# r% |' g' z- q5 `3 z
}
9 Y' `6 V0 k  r* w$ k0 U" g% P$ Q0 v( @& M' u+ s8 r: _
6.do ... while 循环语句
3 ]( T1 F5 ~5 \/ [* X. o) `! `/ y4 Ndo{  动作 }//先执行动作,再测试表达式的值是否为真,为真时继续执行循环内的动作,如此反复直到表达式的值为假,- o- @* p/ {% z
                 //不论表达式的结果如何,至少会做一次动作。  P- c  j) U. P' E; V* @
while(条件表达式);( p7 A' x; g" t. t; j! ^

5 l( A1 x# @$ a2 k  B9 j3 Z) W7.for 循环语句( p# l  h4 L- B" X6 m
for(表达式1;表达式2;表达式3)
8 ?' r1 g7 w4 @3 V/ c2 S{        动作 }
, a' W4 D( E0 l9 {7 x# K4 x  a- f$ V3 L表达式1:通常是设定的起始值。4 [4 s( R; O* N' G( u
表达式2:通常是条件判断式,如果条件为真,则执行动作,否则终止循环。6 C! n( g5 y" K5 S
表达式3:通常是步长表达式,执行完动作后,必须再回到这里做运算,再到表达式2做判断。

该用户从未签到

2#
发表于 2022-5-24 13:20 | 只看该作者
基础的控制流程语句& |1 `9 D( ^3 `( Y8 [

该用户从未签到

3#
发表于 2022-5-24 17:13 | 只看该作者
常见的C程序。

该用户从未签到

4#
发表于 2022-5-24 17:54 | 只看该作者
基础的控制流程语句- Q6 K  o. b1 c$ R
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-18 07:32 , Processed in 0.109375 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表