C语言入门(二)---七种控制结构

来源:互联网 发布:docker mysql 持久化 编辑:程序博客网 时间:2024/05/29 09:12

      C语言中,一共有七种控制结构顺序结构、三种选择结构(if、if…else、switch)、三种循环结构(while、for、do…while)。任何一种程序,根据所需要实现的不同算法,都可以由着七种结构组合而成。

    顺序结构

    顺序结构是C语言的一种内置结构,C语言从main函数开始,顺序执行。

    if单分支结构    

   语法: if(判断条件)

               {

                    语句;

               }

    用法示例:

  #include<stdio.h>

   int main(void)

  {

      int a=4;

      if(a>=3)

     printf("haha,请我吃饭!");

     return 0;

  }


补充一个用if 来排大小的:

 #include<stdio.h>

   int main(void)

  {


 

      int a,b,c,i;

     printf("pls enter 3 integer:\n);

     scanf("%d%d%d",&a,&b,&c);

     if(a>=b)

     {

         i=a;

         a=b;

         b=i;

     }

        if(b>=c)

       {

           i=b;

           b=c;

           c=i;

        }

  

   if(a>=b)

     {

         i=a;

         a=b;

         b=i;

     }

  printf(“from min to max is :%d,%d,%d\n”,a,b,c);

return 0;

}



   if…else 双分支结构

   语法:if(判断条件)

              {

                 语句体;

               }

               else

               {

                  语句体;

                }

  用法示例:

  #include<stdio.h>

   int main(void)

  {

       int score;

       printf("请输入成绩:\n");

       scanf("%d分",&score);

       if(score>=60)

       {

           printf("%d分 恭喜您,通过了!",score);

         }

         else

         {

              printf("%d分 十分抱歉,你需要重修!",score);

          }

          return 0;

    }


 c 语言中有唯一一个三目运算符(?:)作用和if else一样

 语法结构:判断条件?表达式1:表达式2

  判断条件为真时,执行表达式1,否则执行表达式2。

 用法示例:

  #include<stdio.h>

   int main(void)

  {

       int score;

       printf("请输入成绩:\n");

       scanf("%d分",&score);

      score>=60?printf("%d分 恭喜您,通过了!",score):printf("%d分 十分抱歉,你需要重修!",score);

      return 0;

   }


  

   switch 多分支语句

 语法结构:switch(表达式1)

                   {

                       case 表达式2:

                          语句体;

                           break;

                       case 表达式3:

                          语句体;

                           break;

                         ……  

                       default:

                       break;

                  }

   注意:1,case表达式后为冒号,一定不能丢;

               2,case 语句体后若没有break,则会顺次执行,直到遇到break 或所有case 执行完毕,所以break一定不能               丢,但也有例外;

               3,若几个相邻的case ,语句体一样,则前面case 的语句体和break都可以省略,但分号(;)要保留;                      4, default 视情况而定并不是必须的,default 后的break可省略,因为已经是最后了,有没有break 此时程序            都会跳出switch。

 用法示例:

#include<stdio.h>

   int main(void)

  {  

      int i;

      printf("请输入一个整数:\n");

      scanf("%d",&i);

      switch(i)

      {

        case 1:

        printf("一号门开\n");

        break;

        case 2:

        printf("二号门开\n");

        break;

        case 3:

        printf("三号门开\n");

        break;

        default:

        printf("您的输入有误,请重输\n");

        break;

      }

    return 0;

  }


while 循环结构

语法结构:while(循环条件)

                  {

                      循环体;

                       循环增/减量;

                   }

   用法示例:

#include<stdio.h>

   int main(void)

  {  

     int i=1;

     int sum=0;

     while(i<=100)

    {

        sum=sum+i;

       i++ ;

    }

    printf("1+2+3+…+100=%d",sum);

   return 0;

}


do …while 循环

语法结构:do   

                   {   

                         循环体;

                          循环增/减量;

                     }

                     while(循环条件)

do while 循环 是先执行循环体,再判断条件,所以至少要执行一次循环语句。

用法示例:

#include<stdio.h>

   int main(void)

  {  

     int i=1;

     int sum=0;

    do

    {

        sum=sum+i;

       i++ ;

    }

    while(i<=100)

    printf("1+2+3+…+100=%d",sum);

   return 0;

}


for 循环

语法结构: for(表达式1;表达式2;表达式3)

               {

                    循环体;

                }

 注意:1、三个表达式之间用分号(;)隔开;

            2、表达式1为初始值,表达式2为判断条件,表达式3为变量变化表达式,若某一表达式中有两个条件,则这              两条件之间用逗号(,)隔开。

用法示例:

  

#include<stdio.h>

   int main(void)

  {  

      for(i=1,sum=0;i<=100;i++)

      {

        sum=sum+i;

      }

    printf("1+2+3+…+100=%d",sum);

   return 0;

}


      

 

        




   

       


                 


               

       

                    

          

                  

}


   

0 0
原创粉丝点击