C 语言中的控制结构介绍

   C 语言中控制分为三种:顺序,选择,循环
 1)顺序:程序顺序执行(无特别)
 
 2)选择:
   1.if系列
     if //选择满足条件的,然后做什么
       eg:如果变量 a 的值为 3,则将 a 的值改为 5
          if(a == 3) //建议写成 if(3 == a)
          {
            a = 5;
          }
    
     if..else //满足条件的做什么,不满足条件的又怎么做
       eg:如果变量 a 的值大于 10,将a-1赋给a,否则将 a+1 赋给a
          if(a > 10)
          {
            a = a - 1;
          }
          else
          {
            a = a + 1;
          }
         
     if..else if.. else if .. else
       eg:将成绩(score)在90-100之间的,等级(grade)赋值为‘A’
          将成绩在 80-89之间的,等级赋值为 'B'
          将成绩在 70-79之间的,等级赋值为 'C'
          将成绩在 60-69之间的,等级赋值为 'D'
          将成绩在 < 60 的,等级赋值为 'E'
         
          if(score >= 90 && score <= 100)
          {
            grade = 'A';
          }
          else if(score >= 80)
          {
            grade = 'B'
          }
          else if(score >= 70)
          {
            grade = 'C'
          }
          else if(score >= 60)
          {
            grade = 'D'
          }
          else
          {
            grade = 'E'
          }
         
   2.switch() //多分支选择语句
     case 后面只能是常量和常量表达式。default可以放在任何的地方,
         对结果不影响。
      eg:
          将成绩(score)在90-100之间的,等级(grade)赋值为‘A’
          将成绩在 80-89之间的,等级赋值为 'B'
          将成绩在 70-79之间的,等级赋值为 'C'
          将成绩在 60-69之间的,等级赋值为 'D'
          将成绩在 < 60 的,等级赋值为 'E'
         
      switch(score/10)
      {
        case 10:
        case 9:  grade = 'A';break;
        case 8:  grade = 'B';break;
        case 7:  grade = 'C';break;
        case 6:  grade = 'D';break;
        default: grade = 'E';break;
      }
  
 3)循环
    while(表达式)  语句;
 do{ 语句;}while(表达式);
 for:
  for(第一个表达式;第二个表达式;第三个表达式)  语句;
      (初始化部分;条件判断部分;步进部分)
 
   求1-100的和;
    1.while
       int sum = 0;
       int i = 1;
       while(i <= 100)
       {
         sum = sum + i; //sum += i;
         i++;
       }
      
    2.do{}while
       int sum = 0;
       int i = 1;
       do
       {
         sum += i;
         i++;
       }while(i <= 100);
      
    3.for:  for(;;){} //如果语句块中有if语句,效率会降低。
      格式:
       for(表达式1;表达式2;表达式3){循环体}//表达式2一般是判断
      执行顺序:
        表达式1->判断表达式2是否为真,若为真,则执行循环体,在执行表达式3,再判断表达式2,若真,继续执行循环体,再执行表达式3,依次类推,直到表达式2为假,则推出循环
     
      int sum = 0;
      int i; 
      for(i=1;i<=100;i++)
      {
        sum += i;
      }
     
    4.goto //C语言中不建议用,实现跳转,程序的可读性会降低
     
  比较:
   1)while 和 do..while的比较
     当第一次条件为真时,两个没有任何区别。当第一次条件为假时,while的循环体依次都不会执行,但do..while的循环体要执行一次,即do..while的循环体至少执行一次
   2)while系列与for的比较
     一般情况下:
      for循环用于知道循环次数的情况下,而while系列的循环用于循环次数不确定的情况下
     
  补充:goto也可退出循环
    break 和 continue 的用法:
     break 和 continue 只能用于循环内部(break还可用于多分支选择语句中)。一般情况下,break 和 continue 都是在if(某条件)后执行。
     break 退出整个循环(当层),continue 是退出当次循环,后面的继续执行
  
   用于循环和多分支语句:(一般与if连用)  
  break:结束循环
  continue:结束当次循环
    
 gcc -std=c99 *.c //用C99的标准来编译源程序
 
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值