从单片机基础到程序框架(全集 2019pdf版).pdf - 第204页

二进制:110 分析: 变量 a 为 3。a 初始 化为 0,进 入循环体内后 ,a 每次加 1,循 环加 3 次,因此从 0 变成 了 3。 变量 b 为 6。b 初始 化为 0,进 入循环体内后 ,b 每次加 2,循 环加 3 次,因此从 0 变成 了 6。 【48.6 如何在单片机上练习本章节 C 语言程序?】 直接复制前 面章节中第十 一节的模板程 序, 练习代码时只需要 更改 “ C 语言学习区 域” 的 代码就可 以了, 其…

100%1 / 836
/*---C 语言学习区域的开始。-----------------------------------------------*/
unsigned char a=0; //观察这个数最后的变化
unsigned char b=0; //观察这个数最后的变化
unsigned char i; //控制循环体的条件判断变
void main() //主函数
{
i=3;
while(i) //i 不断减小,直到变为 0 时才跳出此循环
{
a=a+1; //当 i 3 减少到 0 的时候,这条语句被循环执行了 3 次。
i=i-1; //循环的条件不断发生变化,不断减小
}
i=0;
while(i<3) //i 不断增大,当 i 大于或者等于 3 时才跳出此循环体
{
b=b+2; //当 i 0 增加 3 的时候,这条语句被循环执行了 3 次。
i=i+1; //循环的条件不断发生变化,不断增加
}
View(a); //把第 1 个数 a 发送到电脑端的串口助手软件上观察。
View(b); //把第 2 个数 b 发送到电脑端的串口助手软件上观察。
while(1)
{
}
}
/*---C 语言学习区域的结束。-----------------------------------------------*/
在电脑串口助手软件上观察到的程序执行现象如下:
开始...
1 个数
十进制:3
十六进制:3
二进制:11
2 个数
十进制:6
十六进制:6
二进制:110
分析:
变量 a 3。a 初始化为 0,进入循环体内后,a 每次加 1,循环加 3 次,因此从 0 变成 3。
变量 b 6。b 初始化为 0,进入循环体内后,b 每次加 2,循环加 3 次,因此从 0 变成 6。
【48.6 如何在单片机上练习本章节 C 语言程序?】
直接复制前面章节中第十一节的模板程序,练习代码时只需要更改C 语言学习区域”代码就可以了,
其它部分的代码不要动。编译后,把程序下载进带串口 51 习板,通过电脑端的串口助手软件就可以观
察到不同的变量数值,详细方法请看第十一节内容。
第四十九节: 循环语句 do while for。
【49.1 do while 语句的常见格式。
格式如下:
do
{
语句 1;
语句 2;
……
语句 N;
} while(条件);
上述代码单片机从上往下执行语句,先从 do 那里无条件进来“语句 1”开始往下执行,一直执行
“语句 N”才开始判断 while(条件)的条件是否为真,如果为真继续返回到 do 的入口处,继续从语句 1”
开始往下执行,依次循环。大家留意到了吗,do while while 语句有什么差别?差别是,do while 是先
无条件进来执行一次循环(花括号里所有的程序代码)执行到循环体最底部才判 while(条件)的条件是
否为真来决定是否继续循环,先上车再买票。 while 语句是先判断条件是否为真再决定是否需要进入循环
体,先买票再上车。
【49.2 for 语句的简介。
for 句也是循环语句,任 for 语句能实现的功能都可以用 while 语句来实现同样的功能,for 语句
while 语句有什么差别呢?for 语句把变量初始化,变量的条件判断,变量在执行循环体后的步进变化这
三个常见要素集成在语句内部,以标准的格式书写出来。在很多场合下,for 在书写和表达方面比 while
句显得更加简洁和直观。
【49.3 for 语句的自加格式。
格式如下:
for(变量的初始化语句; 变量的条件判断;变量在执行一次循环体后自加的步进变化)
{
语句 1;
语句 2;
……
语句 N;
}
在把上述变成更具体的代码例程如下:
for(i=0; i<3;i++)
{
语句 1;
语句 2;
……