04:循环语句

循环语句

  • 1、循环语句
  • 2、for循环语句
    • 2.1:循环最简单的应用
    • 2.2:for和if的嵌套使用
    • 2.3:强制类型转换
    • 2.4:多层for循环的嵌套使用(难)
  • 3、while循环语句
    • 3.1:while循环的简单应用
    • 3.2:for和while的相互转换
  • 4、do....while..语句
    • 4.1:简单应用
  • 4、break的用法
  • 5、continue的用法

1、循环语句

            …某些代码被重复执行。
分类:
           for        while        do…while

2、for循环语句

格式:
            for(i=1;i<=4;++i)
               {
                    语句1:
               }

先执行for里面的 i=1 语句,然后去判断是否 i<=4,是就执行语句1,然后在执行++i,标志这第一次循环结束。循环的次数:4-1+1。

             若for(i=1;i<4;++i)

循环的次数:3-1+1。
【注】循环中更新的变量不能定义成浮点型。

2.1:循环最简单的应用

/*1到10所有的奇数和*/
#include 

int main(void)
{
	int i;
	int j = 0;
	int sum = 0;
	for(i=1 ;i<=10 ;i+=2)
	{
		sum = sum + i;
		j++;
	}
	printf("1到10所有的奇数和为:%d\n",sum);
	printf("循环次数为:%d\n",j);
	printf("i最后的值为:%d\n",i);

	return 0;
}

1到10所有的奇数和为:25
循环次数为:5
i最后的值为:11

2.2:for和if的嵌套使用

/*1到100能被3整除的数的和*/
#include 

int main(void)
{
	int i;
	int sum = 0;
	for(i=1 ;i<=100 ;++i)
	{
		if(i%3 == 0)
			sum = sum +i;
	}
	printf("1到100能被3整除的数的和为:%d\n",sum);

	return 0;
}

1到100能被3整除的数的和为:1683

2.3:强制类型转换

格式:
          (数据类型)(表达式);
功能:
        把表达式的值强制转换为前面所执行的数据类型
eg: (int)(4.5+2.3)           最终值是6
     (float)5/2               最终值是2.500000

2.4:多层for循环的嵌套使用(难)

格式:
          for(1 : 2 : 3)
             for(4 ; 5 ; 6)
            {
                 语句1;
             }
先执行1,然后执行2,然后执行4,执行5,执行语句1,在执行6。
当第二for循环执行结束后在执行第一个for循环的3。
所以最终的循环次数 = 第一个for循环次数 * 第二个循环次数。
#include 

int main(void)
{
	int i,j;
	for(i=0 ;i<=2 ;++i)
		printf("AAAA\n");
	   for(j=0 ;j<=3 ;++j)
		   printf("BBBB\n");
	return 0;
}

AAAA
AAAA
AAAA
BBBB
BBBB
BBBB
BBBB

由此可见,一个for的控制范围为之后的一个语句。要想控制多个语句就添加{}即可。

#include 

int main(void)
{
	int i,j;
	for(i=0 ;i<=2 ;++i)
	{   printf("AAAA\n");
	      for(j=0 ;j<=3 ;++j)
	       printf("BBBB\n");
	}
	return 0;
}

AAAA
BBBB
BBBB
BBBB
BBBB
AAAA
BBBB
BBBB
BBBB
BBBB
AAAA
BBBB
BBBB
BBBB
BBBB

3、while循环语句

3.1:while循环的简单应用

格式: 
          while(判断表达式)
                      语句:
/*1到10的和*/
#include 

int main(void)
{
	int i = 1;
	int sum = 0;
	while(i<=10)
	{
		sum = sum + i;
		i++;
	}
	printf("1到10的和为:%d\n",sum);

	return 0;
}

1到10的和为:55

3.2:for和while的相互转换

            for(A ; B; C)
              {
                  语句1;
              }
等价于:
              A
            while(B)
              {
                  语句1;
                  C;
              }

4、do…while…语句

4.1:简单应用

格式:   do
             {
                语句;
              }
           while(判断表达式);

和while,for的区别:先执行一次语句才进行判断,而for和while 可能语句一次都不执行。

04:循环语句_第1张图片

4、break的用法

作用:
     break如果用于循环是用来终止循环。
     break如果用于switch,则是用于终止switch。
      break不能直接用于if,除非if属于循环内部的一个子句。

①break终止if会出错:

04:循环语句_第2张图片
②break终止if属于循环内部的一个子句:

04:循环语句_第3张图片

③break如果用于循环是用来终止循环;break只能终止距离他最近的循环。

04:循环语句_第4张图片

5、continue的用法

…用于跳过本次循环余下的语句,转去判断是否需要执行下次循环。

04:循环语句_第5张图片

你可能感兴趣的:(C语言(郝斌版),c语言)