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

时间:2022-10-16 04:57:39

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

  一、for循环

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

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

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

            执行语句1;

            ……

            执行语句n;

          }

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

  例子1代码:

  

  #include <stdio.h>

  int main(int argc, char **argv)
{
int sum = ;
int num = ;
printf("请输入你要求和的个数:");
scanf("%d", &num); for(int i = ; i <= num; i++){
sum += i;
}
printf("1~%d的和为: %d\n", num, sum); sum = ;
for(int i = ; i <= num; i += ){
sum += i;
}
printf("1~%d的奇数和为: %d\n", num, sum); sum = ;
for(int i = ; i <= num; i += ){
sum += i;
}
printf("1~%d的偶数和为: %d\n", num, sum); return ;
}

  代码的执行结果为:

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

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

  #include <stdio.h>

  int  main(int argc, char **argv)
{
int var1 = ;
int var2 = ;
int i = ;
int j = ;
printf("i: %d and var1: %d\n", i, var1);
var1 = ++i;
printf("i: %d and var1: %d\n", i, var1);
printf("iiiiiiiiiiiiiii jjjjjjjjjjjjjjj\n");
printf("j: %d and var2: %d\n", j, var2);
var2 = j++;
printf("j: %d and var2: %d\n", j, var2); return ;
}

  代码的结果:

  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;