9-循环

 循环

作业:

1,月的天数

 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5     int n;
 6     scanf("%d", &n);
 7 
 8     switch (n)
 9     {
10         //1 3 5 7 8  10  12   31天
11         case 1:
12         case 3:
13         case 5:
14         case 7:
15         case 8:
16         case 10:
17         case 12:
18             printf("31天");
19         break;
20 
21         case 4:
22         case 6:
23         case 9:
24         case 11:
25             printf("30天");
26         break;
27 
28         case 2:
29             printf("29天");
30         break;     
31 
32         //case 这个分支不分先后顺序
33         //case 可以合并 注意:合并之后只有一个break
34         //三目运算符
35     }
36 
37     return 0;
38 }

2,求1+2+3+4+5。。。。。。。。。+100的总和

 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5     int number = 1, sum = 0;
 6 
 7     while (number <= 100)
 8     {
 9         sum = sum + number;
10         number++;
11     }
12 
13     printf("%d", sum);
14     return 0;
15 }

循环:有些事情可以反复执行  算法里面三大结构之循环结构。For循环  while   do。。。While       goto

一、while循环

1、形式:

while (表达式)  //

{

//语句

}

表达式 每一次循环都要判定表达式的值 如果为真(表达式的值为1)执行循环 否则不再执行循环

为假的时候不循环(跳出循环),执行后面的代码。

执行流程:1)第一次进入while循环执行b前,先判断a

2)根据条件判断是否执行bc,如果条件判断a为真(true),继续执行循环主

          体;若条件判断值a为假(false),则跳出循环不再执行b 代码。继续执行循

          环后面的代码

     3)执行完b 后,继续判断a是否满足条件。由于while循环不会自行更改循环控 制变量的内容,所以while循环中为循环控制变量赋值的工作要由设计者自己来 做,完成后再回到步骤(2)重新判断是否继续执行循环。

二、Do.....while

do

{

语句;

} while (表达式);

先执行一次循环里面的代码,然后对表带是求值,值为真接着循环,值为假跳出循环。

语句先执行一次,在进行判断,while先判断后执行。(仅仅只有第一次循环是这样)

 1 #include<stdio.h>
 2 
 3 int main()
 4 {
 5     int tarNumber = 88, inNumber=0; 
 6     printf("请输入一个数字:\n");
 7 
 8     do
 9     {
10         scanf("%d", &inNumber);
11 
12         if (inNumber > tarNumber)
13         {
14             printf("太大了,亲!\n");
15         }
16 
17         if (inNumber < tarNumber)
18         {
19             printf("太小了,亲!\n");
20         }
21 
22     } while (inNumber!=tarNumber); //注意:循环的条件表达式  
23 
24     printf("恭喜你猜对了,这个数字是:%d",inNumber );
25     return 0;
26 }

执行步骤:

     (1)执行语句a和跳出循环条件b,转(2

     (2)计算while后面括号里表达式的值,若其结果非0,则转入(1),否则转(3)

    3)退出循环,执行循环体下面的语句。

注意:do……while语句最后的分号(;)不可少,否则提示出错。循环体至少执行一次

三、For

for (表达式1; 表达式2; 表达式3)

{

语句;

}

for语句是循环控制结构中使用最广泛的一种循环控制语句,特别适合已知循环次数的情况。结构如下:

for ( [表达式 1]; [表达式 2 ]; [表达式3] ){语句4}

表达式1:一般为赋值表达式,给控制变量赋初值; 控制变量

表达式2:关系表达式或逻辑表达式,循环控制条件;控制条件

表达式3:一般为赋值表达式,给控制变量增量或减量;增量或减量

//======================【打印10次付出不亚于任何人的努力!】====================================

int i; //声明一个变量i

for (i = 0; i < 10; i++) //1、给i赋值为0  2、判断i<10 为真执行循环 为假不执行

{

  printf("付出不亚于任何人的努力!\n");

}

四、跳出循环用break(跳出) 或者continue(继续)

Break :不执行循环里面break后面的语句,直接跳出循环去执行后面语句。

Continue:不执行循环里面continue后面的语句,但是继续循环。

 

五、循环嵌套

一个循环体语句中又包含另一个循环语句,称为循环嵌套

 1 #include<stdio.h>
 2 
 3 int main()
 4 {
 5     int i, j;
 6 
 7     for (i = 0; i < 9; i++)  //循环9次   第一次循环
 8     {
 9         for (j = 0; j < 9; j++)  //循环9次   循环9次
10         {
11             printf("*");
12         }
13     }
14     return 0;
15 }

打印三角形 就是在找外部循环i的值和内部循环次数的规律   杨辉三角形

 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5     int i, j;
 6     for (i = 0; i < 5; i++) // 0 1 2 3 4
 7     {
 8         for (j = 0; j < 5 - (i + 1); j++) // 4 3 2 1 0
 9         {
10             printf(" ");            
11         }
12         for (j = 0; j < 2 * i + 1; j++) // 1 3 5 7 9
13         {
14 
15             printf("*");
16 
17         }
18         printf("\n");
19     }
20 
21     return 0;
22 }

猜你喜欢

转载自www.cnblogs.com/tiantiancode/p/11126814.html