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

keil中C语言的();【】;{}三种括号的使用

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-11-10 13:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
keil中C语言的();【】;{}三种括号的使用. D5 g( _6 E, b9 V
" n% e4 K9 e; j/ ]# P. M
/*        名称:K1-K4 控制数码管加减演示
5 o( W! o2 F2 I1 @        说明:按下K1后加1计数,按下K2后减1计数,按下K3后清零。# e: ~/ P7 L  n1 _
*/
1 Y4 j8 k) h! H#include<reg51.h>% R1 M$ S2 d! w( o4 X
#include<intrins.h>3 e' p2 Y& q* n! ?+ B: {4 u; U
#define uchar unsigned char8 X$ l5 C0 @: e. N( v1 h" Q* U" v
#define uint unsigned int
7 e6 M$ a  j* {' @: s0 V* `//段码/ k1 @: I3 U- @! }5 c
uchar code DSY_CODE[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};. Y- w5 h7 K* }
//待显示的3位缓冲8 I8 g4 J, |+ w. w1 _
uchar Num_Buffer[]={0,0,0};; i: e( Z% @& I" V# b& r! O
//按键代码,按键计数
: s4 w( M4 @" P6 D+ s- Juchar Key_Code,Key_Counts=0;
' w. I( H. o/ Q) F3 Y//延时
, A# q% ^, A& h- l. Uvoid DelayMS(uint x)8 ^) H4 H* p5 t6 K' z) k
{1 d0 p& G6 z$ S) u2 u: c
        uchar i;
/ V. s% V) y8 }9 e# }$ Z2 `/ ^: N& U        while(x--) for(i=0;i<120;i++);$ n6 }( ~2 ^6 p2 v3 T+ x9 ^. N
}      
. y7 b* O, Q- ?//显示函数5 ^! n+ W; V3 j, R
void Show_Counts_ON_DSY()
, `+ e' E" n0 P# n{& u: E: h2 A' x# m8 g* S
        uchar i,j=0x01;
- K' R7 x" O0 Y$ E: C        Num_Buffer[2]=Key_Counts/100;- e" M& _' Q, X  j5 `4 U
        Num_Buffer[1]=Key_Counts/10%10;5 ~. T( |7 ~' X& l# Y7 r: J
        Num_Buffer[0]=Key_Counts%10;, j" Q4 A$ y1 y  i
        for(i=0;i<3;i++)
/ @2 s  d6 C: q( I; ^( j# q; |        {2 ^* g$ w, I* a5 @
                j=_cror_(j,1);
' k! }+ |- w- L0 P3 ^                P0=0xff;
5 `1 u) p3 `7 f, L7 A, u                P0=DSY_CODE[Num_Buffer];) m2 P# E' Q# U( M# T
                P2=j;
- N8 d; G8 z3 @  O7 Y! {& N                DelayMS(1);9 J4 v# x9 z2 i2 ]( i
        }
" g! O+ r- r- Y$ X* m3 v5 \# b}# ^0 R* e, J7 l. {
//主程序9 ^$ W; X" U! x' F6 Z
void main()
) F% a+ ^$ }) l: r5 k) b8 n: z{
( v/ |" w3 ^( ?+ v3 g+ o5 l        uchar i;/ p: N% l+ Z+ s% |* ]6 U
        P0=0xff;
6 X' {* A( g+ T; e        P1=0xff;1 G  Q8 b$ l2 v; t
        P2=0x00;- \$ G2 K. h. j- L' x
        Key_Code=0xff;
4 X  U/ @8 v- M& J  a! B0 M" l        while(1)  q8 y! U% M9 X( y* r9 [
        {
- _8 {5 ?) H& _4 t4 ~3 i8 p                Show_Counts_ON_DSY();
( C( X( Y- s. c( {, U                P1=0xff;* T& p- ^7 x- h; h
                Key_Code=P1;$ [; j; u- ?: @1 z6 n5 U
                //有键按下时,数码管刷新显示30次,该行代码同时起到延时作用* n6 N7 [" o/ N! y/ n; s
                if(Key_Code!=0xff)1 m! }2 |2 Z* ^8 d
                for(i=0;i<30;i++) Show_Counts_ON_DSY();6 m$ a* w9 ], \8 G
                switch(Key_Code)3 k% m5 |" z5 y
                {
8 I6 l# i( \# O1 k+ i% v/ h                        case 0xfe: if(Key_Counts<255) Key_Counts++;( [0 ?5 _8 O# u; U
                                                break;) [% M5 r3 k1 S4 T
                        case 0xfd: if(Key_Counts>0) Key_Counts--;& ]4 g/ f: q  m5 y/ G3 |# }: r
                                                break;* t9 T) ]" e2 L$ }2 H2 `# Z, \
                        case 0xfb: Key_Counts=0;+ ?+ t. L1 l4 O( j% B7 F3 l
                }8 d# s" |3 K: g
                Key_Code=0xff;1 \5 S7 z% b9 l
        }, J/ |/ |' J9 t1 e6 D
}
6 k' Q; D4 z) i+ C  Q- m5 D8 u& y3 ~/ D' |6 A

$ N/ C2 D0 a/ G1.我想知道什么情况下要用空格、逗号?: w1 M( t9 t6 l5 S. _
2.什么情况下用小括号();中括号【】;还有大括号{}?

+ b+ w# S" e' }# O

该用户从未签到

2#
发表于 2021-11-10 14:04 | 只看该作者
if , for和while语句中的表达式需要括号

该用户从未签到

3#
 楼主| 发表于 2021-11-11 17:53 | 只看该作者
ssdgh 发表于 2021-11-10 14:04) ^% N& t1 i4 v0 ?0 B
if , for和while语句中的表达式需要括号

6 `& N% M5 _$ h+ ENum_Buffer[2]=Key_Counts/100;
- l- T" {1 T0 o; _2 y        Num_Buffer[1]=Key_Counts/10%10;
; j4 x. ?. w8 \( E# O- @4 Y        Num_Buffer[0]=Key_Counts%10;: k' V8 v) D; _( M% W; L
是说除以100取出整数,除以10取出余数,对10取余数?& Y9 V7 ?- u* M

  b' a( W0 z$ o* c+ \
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-10-7 05:49 , Processed in 0.140625 second(s), 26 queries , Gzip On.

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

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

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