《手把手教你学C语言》学习笔记(10)--- 程序的循环控制

  C语言程序设计中,有些代码需要重复执行很多次,循环主要有三类:

  一、for循环

  1、基本格式为:for(表达式1;表达式2;表达式3){      //表达式1:循环变量赋初值

                                //表达式2:循环变量满足的条件

                                //表达式3:循环变量的增加量

            执行语句1;

            ……

            执行语句n;

          }

  2、语句块功能:执行特定次数的代码循环

  例子1代码:

  

 1 #include <stdio.h>
 2 
 3 int main(int argc, char **argv)
 4 {
 5     int sum = 0;
 6     int num = 0;
 7     printf("请输入你要求和的个数:");
 8     scanf("%d", &num);
 9 
10     for(int i = 0; i <= num; i++){
11         sum += i;
12     }
13     printf("1~%d的和为: %d\n", num, sum);
14 
15     sum = 0;
16     for(int i = 1; i <= num; i += 2){                                    
17         sum += i;
18     }
19     printf("1~%d的奇数和为: %d\n", num, sum);
20 
21     sum = 0;
22     for(int i = 0; i <= num; i += 2){
23         sum += i;
24     }
25     printf("1~%d的偶数和为: %d\n", num, sum);
26 
27     return 0;
28 }

  代码的执行结果为:

  请输入你要求和的个数:100
  1~100的和为: 5050
  1~100的奇数和为: 2500
  1~100的偶数和为: 2550

  注:在代码第10行中for循环中出现了i++中的++是自增运算符,根据运算符与变量的位置关系,可以写为++i和i++,那究竟有什么区别呢:例如以下代码:  

 1 #include <stdio.h>
 2 
 3 int  main(int argc, char **argv)
 4 {
 5     int var1 = 0;
 6     int var2 = 0;
 7     int i = 5;
 8     int j = 5;
 9     printf("i: %d and var1: %d\n", i, var1);
10     var1 = ++i;
11     printf("i: %d and var1: %d\n", i, var1);
12     printf("iiiiiiiiiiiiiii jjjjjjjjjjjjjjj\n");
13     printf("j: %d and var2: %d\n", j, var2);
14     var2 = j++;
15     printf("j: %d and var2: %d\n", j, var2);
16                                                                          
17     return 0;
18 }

  代码的结果:

  i: 5 and var1: 0
  i: 6 and var1: 6
  iiiiiiiiiiiiiii jjjjjjjjjjjjjjj
  j: 5 and var2: 0
  j: 6 and var2: 5
  例子表明:var1 = ++i;等效为代码 i = i + 1; var1 = i;

       var2 = j++;等效为代码var2 = j;j = j + 1;
  

  

  

posted @ 2017-05-23 13:02  叕叒双又  阅读(411)  评论(0编辑  收藏  举报