找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 11034|回复: 0
收起左侧

keil程序基础教学——循环结构之for循环

[复制链接]
ID:290202 发表于 2018-3-10 21:24 | 显示全部楼层 |阅读模式

C语言中的循环结构分为三类:
1、for()循环
2、while()循环
3、do while()循环
何为循环:程序自动重复某几个语句

1、for()循环,最常用的循环
语法结构:

for(语句1;语句2;语句3){    循环体}
  • 1
  • 2
  • 3

语句1:初值表达式,用于在循环开始前为循环变量赋初值
语句2:循环控制逻辑表达式,它控制循环执行的条件,决定循环的次数
语句3:循环控制变量修改表达式,它使for循环趋向结束
循环体:需要重复执行的语句
例程:

#include<stdio.h>int main(){   for(int i=0;i<10;i++){       printf("%d\n",i);   }   return 0;}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

语句1: int i=0;
(仅进入循环体时执行,同一个循环周期仅执行一次)
语句2:i<10; //判断语句,当条件成立时执行循环体
(当程序进入循环时,i=0,此时紧接着执行语句2,发现语句2成立,那么程序开始执行循环体)
语句3:i++;
(第一次循环体执行完成后,程序自动执行语句3,执行语句3后自动再去判断语句2是否成立,如果成立则再执行循环体,以此类推)
循环体:printf(“%d\n”,i);
程序解释:循环输出变量i的值
执行结果:

for循环还有以下几种书写方式:

#include<stdio.h>int main(){   int i=0;   for(;i<10;i++){       printf("%d\n",i);   }   return 0;}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

*初始化循环变量可以在for循环外实现,执行结果同上

#include<stdio.h>int main(){   int i=0;   for(;i<10;){       printf("%d\n",i);       i++;   }   return 0;}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

*赋值循环变量可以在循环体内实现,执行结果同上

#include<stdio.h>int main(){   int i=0;   for(;;){       printf("%d\n",i);       i++;   }   return 0;}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

语句1、2、3都可以为空,给大家留个问题,循环体可以为空么?
我们来看一下这个程序的执行结果:



程序没有执行完,你会发现变量i一直在自加,直到 溢出(百度一下),因为没有了循环条件的限制,循环体会一直执行,直到沾满内存,用尽系统资源,此时你的电脑就会出现传说中的死机了。
*所以你的电脑平时出现卡顿的时候就是因为系统资源耗尽,如果经常卡顿可能就是提示你要升级电脑配置了


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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