C程序控制语句

主要内容

  • 程序流控制
  • if 语句
  • 比较操作符 , 逻辑操作符
  • 程序语句
  • 循环语句:for 语句 , while 语句 , do while 语句
  • switch 语句
程序流控制
  • 什么是程序流控制

    程序流控制就是控制代码中程序语句的执行顺序。
  • 关键字 if

    C程序设计语言中提供了很多的关键字用于在我们的程序中进行程序流控制,其中的一个关键字就是 if
if 语句
  • if关键字的主要功能是允许我们从多个选项中选取一个
  • 在C语言中是怎么来表示的呢?

    
    #include <stdio.h>
    
    int main(int argc,const char *argv[]){
        int myInt;
        myInt = 5;
        if(myInt == 0){
            printf("myInt is equal to zero");
        }
        else{
        printf("myInt is not equal to zero");
        }
    }   
  • if 语句格式

    if(表达式){
      语句
      }
    或者是
    if(表达式){
      语句 1
     }
    else {
      语句 2
      }
比较操作符
  • C语言表达式中有一些特殊的操作符,我们称为比较操作符,又叫关系表达式。所谓的关系表达式是依赖比较操作符左右两边的关系,产生布尔值”真或者假“

    例如:== 操作符是比较操作符两边的值是否相等,如果相等的话表达式的值为真,否则表达式的值为假。
    myInt == 5;
    如果myInt的值是5的话,表达式的值为真,如果myInt的值不是5的话,表达式的值为假。
    if ( myInt == 5printf( "myInt is equal to 5" );   如果myInt的值是5的话,表达式myInt == 5就是真,printf函数会被调用。
    如果myInt的值不是5的话,表达式myInt==5就是假,printf函数语句会被忽略。 
逻辑操作符
  • 逻辑操作符 ! ,我们称为非操作;例如!A操作,称为非A。逻辑非操作符的功能是,将true转变为false,将false转变为true。
  • 例子

    bool myFirstBool, mySecondBool;
    myFirstBool = false;
    mySecondBool = ! myFirstBool;
    if ( mySecondBool )    
     printf (“mySecondBoo must be true”); 
    if ( !mySecondBool )    
     printf (“mySecondBoo must be false”);
逻辑与操作符&&和逻辑或操作符||
  • 符号&&是逻辑与操作,逻辑与操作符是二元操符,其功能是当且仅当操作符两边的操作数都为真的时候,表达式的值为真,否则如果任何一个操作数为假,或者都为假的时候表达式的值为假。

      bool    hasCar, hasTimeToGiveRide;
      hasCar = true;
      hasTimeToGiveRide = true;
      if ( hasCar && hasTimeToGiveRide )
          printf( "Hop in - I'll give you a ride!\n" );
      else
          printf( "I have no car, no time, or no car and no  time!\n" );
  • 符号||是逻辑或操作,逻辑或操作符也是二元操作符,其功能是如果操符符左边和右边任何一个操作数为真,或者如果两个操作数都为真的时候,表达式的值为真;当且仅当两个操作数都为假的时候,表达式的值才会假。

      bool  nothingElseOn, newEpisode;
    nothingElseOn = true;
    newEpisode = true;
    if ( newEpisode || nothingElseOn )
        printf( "Let's watch Family Guy!\n" );
    else
        printf( "Something else is on or I've seen this one.\n" );


    int  nothingElseOn, itsARerun;
    nothingElseOn = true;
    itsARerun = false;
    if ( (! itsARerun) || nothingElseOn )
        printf( "Let's watch Family Guy!\n" );
    else
        printf( "Something else is on or I've seen this one.\n" ); 
符合表达式
  示例:
     int myInt;
      myInt = 7;
      if ( (myInt >= 1) && (myInt <= 10) )
          printf( "myInt is between 1 and 10" );
      else
          printf( "myInt is not between 1 and 10" );
程序语句
  • 嵌套if语句

    if ( myVar >= 1 )
    if ( myVar <= 10 )
        printf( "myVar is between 1 and 10" );
    这个例子里,使用一个if语句作为另外一个if语句的语句。其表达的含义是如果两个if语句的表达式都为真则调用printf()函数。也就是当myVar大于等于1并且小于等于10的时候printf()语句被调用。
    实际上这个代码例子与如下代码功能完全相同。
    if ( ( myVar >= 1 ) && ( myVar <= 10 ) )
        printf( "myVar is between 1 and 10" );
       这个例子的代码可读性更好。
  • 空语句

    C语言中最简单的语句就是空语句,它本身只包含一个分号。空语句本身并不执行任何任务,但有时还是有用的。它所适用的场合就是语法要求出现一条完整语句,但并不需要它执行任何任务。
    例如:
     if ( bored ) 
            ; 
  • 表达式语句

    在所有的表达式后面加上一个分号,就可以把表达式转变为语句,这样的语句叫表达式语句。
    C语言中本身不存在赋值语句,但是下面两个表达式:
     myInt = anotherInt + 3;
     myInt ++;
    实际上是表达式语句。
  • while 语句

    对于if语句来说, 如果表达式为真,那么if的语句会被执行,但是只执行一次。那么对于while语句,如果指定的表达式为真,那么语句将会重复执行。所以while语句也被称为while循环。语法格式如下:
      while ( expression )
          statements
      while语句的执行过程及Demo
               int i;
               i = 0;
               while(++i < 3)
               printf("Looping:%d\n",i);
               printf("We are past the while loop.");
      while语句的三个要素:初始化,修改,终止  
    • while循环中的break语句,用于终止循环,在执行完break语句后,执行流程的下一条执行的语句就是循环正常结束后的那条语句。
    • continue用与终止当前那次循环。

    • for语句

    for语句与while语句类似,属于循环语句,他也遵循初始化,修改,终止 的模型。
    语法格式如下:
      for(expression1; expression2; expression3)
            statement
     for语句执行过程Demo
         for(i = 1; i < 3; i++){
         printf("Looping: %d\n",i);
         }
    • do语句
    do 语句的语法格式
        do{
        statement
        }while(expression);
    do  语句的执行Demo
         int i = 0;
         do{
                printf("%d",i);
                i++;
          }while(i < 3);
      do语句的特点是: 无论表达式的值是否为0;循环体都会执行一次       
    • switch语句
    switch语句也是选择语句,语法格式如下:
        switch ( expression ) {
            case constant:
                statements
            case constant:
                statements
            default:
                statements
        }
    执行过程及Demo
        switch ( theYear ) {
            case 1066:
                printf( "Battle of Hastings" );
                break;
            case 1492:
                printf( "Columbus sailed the ocean blue" );
                break;         case 1776:
                printf( "Declaration of Independence\n" );
                printf( "A very important document!!!" );
                break;
            default:
                printf( "Don't know what happened during this year" );
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值