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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x

( G3 A. n- \$ R( J1.
  V% P8 L3 ^4 ]3 @+ a. Nif(条件表达式)
6 F' o8 }6 @- w, H& P2 Y{
* D/ \# o0 F  J4 m% s: }        动作11 ~$ z& a" r, h& `/ m, f
}( x; ]4 |+ h5 b7 ^# k
//如果条件表达式的值为真,执行动作1。否则跳过往下执行程序5 a1 V: a% m8 B. ~3 I
# L9 G. u' Z/ j+ R. d
% }0 y7 B! N3 {- F% r& x2 \% w6 V" A

* u$ V, D0 {3 a  M6 c2.
4 _5 _; S$ C# s  q( lif(条件表达式)) K* `9 v4 P4 u/ u) B% }0 v4 r3 C
{/ z' D- E+ O" [
        动作1
5 S  M3 M! i$ C$ Y) V}5 t5 @" b8 J  T; z' v
else, H4 Q, t# J( \' b& i1 x: v9 L
{( D" f& y1 K& D3 D3 T! P
        动作2( L4 t  S5 b: \' Q7 `
}6 ]8 i8 C- y  G! |2 \
//如果条件表达式的值为真,执行动作1,否则执行动作2.6 p3 M1 P  |+ y: }2 N

: H+ B! S5 E) j0 H; p3.0 F8 s( V+ [6 R# z( ]
if(条件表达式1)
5 w! c2 d# k! S9 k  ^- f! c' M{" B  i8 e' G! J/ ^: P1 [
        if(条件表达式2)# H8 C) c8 J: [0 p( U( e+ I9 T
        {* R/ K" ?7 N$ L  `- a4 V, v4 o
                if(条件表达式3)! G! C$ w# a9 ^6 B
                {% n( {. u& z$ V
                        动作1//表达式1,2,3都为真,执行动作1# Z. u! Z9 d; S6 v2 u" J
                }, |- q; c" e& I' K9 A8 f
                else- ?3 n5 f' q$ `+ x3 T
                {
# h$ |5 @7 d+ B4 f                        动作2//表达式1,2为真,3为假,执行动作2
2 H7 i& u1 h* V                }4 I* {+ U) s- [7 m9 {
        }9 K, M! r# t' \: @0 o
        else
) l* u0 B' m  \; ]; _        {
( N9 r& J+ A6 e+ K8 B                动作3; y+ q/ T( S9 ~! ~& P4 z/ D
        }: ^$ l( t/ X) c$ D( {, w
}/ K# Y" ^% l; c, Y. Q9 u
else% V8 @9 p% ]/ g' }9 J* p; ^5 C, A
{
7 C1 q2 K6 W3 H/ @        动作4: X4 \) X( Y6 z% j( @$ S
}
+ j0 T+ J  s7 S# `- e/ Y* r' p3 e
- \( J9 W4 D, A: B  J; A" ^; c
9 T) J5 D4 @+ h1 @0 l//动作3表达式1为真,表达式2为假执行# [: a, c: _# O( D6 {- x
//动作4表达式1为假,时执行6 a, n0 a' J! ^- J- ]  d

. |- R! Q! K0 h! n3 D  ~) G2 M; T7 M' k- l7 b0 X3 p4 d6 D* b( {
4.7 I0 b/ ~7 Q9 X# V. d5 C" l
if(条件表达式1)
4 J+ V7 i' T+ I; C% o{9 |1 ^& S# a3 N' `. I1 z
        动作1//条件表达式1成立执行; }3 X: a( s' V( w6 }* ?
}
' L* S% W5 ?; Oelse if (条件表达式2)& r% ?9 z$ A! d0 I& `1 z
{
4 i4 v- ^9 u/ x) E! I        动作2//条件表达式1不成立,条件表达式2成立执行
$ i" X  L+ [( Q+ g2 f" b- ~% j) @}
3 K1 {4 [( b2 n' {8 V! ?else if(条件表达式3)
+ I* G3 o" H( Q+ s, V- t{
7 Q$ q& x$ h+ ~" X        动作3//条件表达式1,2不成立,条件表达式3成立执行
6 |  r5 w9 q' F}
" l% M5 W5 Z7 D% ielse
0 y1 z, ^( c+ Y$ U{
" Q/ B$ l9 m% N! ]& I        动作4//条件表达式1,2,3都不成立,执行* \* |7 c% b# H6 p7 S
}3 `& T" R1 ?2 k# C  Z" U" L9 _8 T* a
1 E& C' I5 V5 V+ G. r- Z5 R" J
: z: U$ R$ C" u( G% G6 r
4.switch case 语句
4 o+ |! O6 h, A" y) [
" k4 j0 \& L( b* S; q/ ~" e& kswitch (条件表达式)//条件表达式必须是整数或字符6 k; e3 E; \7 m, L
{
0 ?# H* E3 q7 d, [7 T        case 条件值1: //条件值需要是常量,不能是变量
9 ~3 v( N' d, c' G        {9 {. R' U+ P6 q0 F" ^, v
                动作1' ]6 p2 h, i3 C. E) z0 S( W" ~
                break;//必须用break;语句跳出
2 J$ V* c9 K# D8 Q+ D3 K3 W  B7 d        }5 X. N- ]/ C. l3 K* q5 n
        case 条件值2:2 t" q- M( [8 v1 {6 R
        {
* L: Q/ }: l7 T' m                动作2/ Z( F  D/ E- k" {+ f: J! V
                break;" x$ W2 |. a- b; a- _6 N7 X( @8 v
        }
. F: i+ m7 t- g% o$ H6 H* w        case 条件值3:
% W# j2 F+ ?7 k$ _5 b+ o0 x) g        {8 c& K5 R6 m+ F/ T7 H; i8 T, f
                动作3' ?' w: S' {" ?
                break;3 x8 c) F; ~! u( ^+ f
        }6 _( u, q: x: ^9 [
        default ://所以条件都不匹配时执行缺省语句
1 W: ^, p0 o: e3 M) C; s  C        {
! f" i0 e! ?& A6 Y, w2 K0 @                动作4
+ B& X. M) k2 {# V% N& u                break;+ R$ l6 O' Y2 h' Q
        }1 f0 e4 ?/ @# o# p
}4 E: B2 y) @& P
' s  }3 S- B" U9 p' k3 d
5.while语句  ^% Y! O5 T5 s  Y' u
, a& Z3 K' L. o1 \# v; d! c
while(条件表达式)//先测试条件表达式的值为真时,执行循环内的动作,做完后又跳2 H9 E/ O6 [3 X3 n+ b( ~% w
                 //回测试条件表达式,如此反复直到条件表达式值为假,退出循环。
2 A" n7 d3 ]! C; R. s2 v  b/ D{
$ r# h8 ?5 L4 {" }        动作; K. O3 R' b; P- ~# l9 V( f
}
/ W0 o- i' Q' x& J& _) q5 U
% b0 H7 I5 r  c$ S( G6.do ... while 循环语句/ i* j- M# y" {: `5 G
do{  动作 }//先执行动作,再测试表达式的值是否为真,为真时继续执行循环内的动作,如此反复直到表达式的值为假,
  m6 z6 R6 L: o  X                 //不论表达式的结果如何,至少会做一次动作。- x  j' X8 ]& }8 z3 |' E# O
while(条件表达式);
9 l  |8 q: X: A* r6 D- Y6 z3 O6 ~9 b  c% R2 g% L1 z
7.for 循环语句8 X* J2 w( M) q( G* @* l
for(表达式1;表达式2;表达式3)0 ^% t5 N  H/ r% b8 R2 V- {0 a! X/ `( l
{        动作 }
+ k+ |2 U& w6 ?! f; Y表达式1:通常是设定的起始值。
, @- L( G8 g" p! W& v  K表达式2:通常是条件判断式,如果条件为真,则执行动作,否则终止循环。  e5 d( x" }) C# |
表达式3:通常是步长表达式,执行完动作后,必须再回到这里做运算,再到表达式2做判断。

该用户从未签到

2#
发表于 2022-5-24 13:20 | 只看该作者
基础的控制流程语句
7 m: n0 u5 E. k

该用户从未签到

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

该用户从未签到

4#
发表于 2022-5-24 17:54 | 只看该作者
基础的控制流程语句' g0 m; y) W9 j" b0 {
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-4 11:07 , Processed in 0.140625 second(s), 23 queries , Gzip On.

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

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

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