C语言中for循环的使用详解及注意点

1.for语句的格式

for(表达式1;表达式2;表达式3)
	{
	   循环语句
	}
表达式1为初始化部分,用于初始化循环变量的。
表达式2为条件判断部分,用于判断循环是否终止。
表达式3为调整部分,用于循环条件的调整。

循环执行过程如下,流程图如图:
(1).执行表达式1。
(2).判断表达式2是否为真(非0为真,0为假)。
(3).若为真,则执行步骤(4),否则,执行步骤(7)。
(4).执行循环语句。
(5).执行表达式3。
(6).程序流程转到步骤(2)。
(7).退出循环。
在这里插入图片描述

2.for语句循环示例

#define _CRT_SECURE_NO_WARINGS 1
#include <stdio.h>
int main()
{
	int i=0;
	for(i=1;i<10;i++)
	{
		printf("%d ",i);
	}
	return 0;
}

 执行过程如下图所示
在这里插入图片描述
  由图所示当进入到for语句中首先执行i=1;进行初始化,然后执行i<10;判断语句,再执行printf(“%d”,i);循环语句,最后执行i++调整部分,至此完成一次循环,然后直接执行i<10;判断语句,再执行printf(“%d”,i);循环语句,最后执行i++调整部分。(i=1;这个初始化部分只在第一次循环时执行。①→②→③→④→②→③→④…)

3.注意

(1).可省略表达式1,但需保留分号。
(2).若省略表达式2,则不判断循环条件,程序死循环。
(3).表达式1和3还可以是逗号表达式。
(4).若能保证程序正常结束循环,也可以省略表达式3。
(5).3个表达式可以同时省略,程序死循环。
(6).可同时省略表达式1和3,此时完全等同于while语句

4.与while语句的比较

//for语句等价于下列语句:
表达式1while (表达式2{  语句;
   表达式3}

示例:

for(i=1;i<=100;i++) sum=sum+i;
它相当于以下语句:
       i=1;
       while(i<=100)
         {sum=sum+i;i++;}

5.典型例题

1.请问这个程序循环了多少次?

#define _CRT_SECURE_NO_WARINGS 1
#include <stdio.h>
int main()
{
	int i=0;
	int k=0;
	for(i=0,k=0;k=0;i++,k++)
		k++;
	return 0;
}

  当你看到这题时你会回答几次呢?1or…,其实这个程序完成了0次循环。因为在for语句的判断部分是k=0,而=是赋值符号,是将0赋值给了k,此句表示判断部分为假,则程序循环0次,假若我们把程序的判断部分改为k==0,程序则执行一次。
  你也可以在程序代码中加入printf(“%d”,k);,打印循环后k的值,这里可以清楚的看到循环执行了几次。

  • 3
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值