zoukankan      html  css  js  c++  java
  • C++学习 之 控制程序流程 (笔记)

    1.使用if...else有条件的执行

      在一些时候语句需要进行有条件的执行。比如如果输入"Y"就执行赋值语句N=1;否则N=0:

      

    #include<iostream>
    using namespace std;
    int main ()
    {
        char Judge='N';
        int N;
        cin>>Judge;
        if(Judge=='Y')
        {
               N=1;
        }//if条件下一条语句时{}可省略,此处给出
        else
        {
               N=0;
        }
       cout<<N<<endl;
    return 0; }

       if...else是可以嵌套使用的,下面例出一个模板:

    if(expression1)
    {
        DoSomething;
        if(expression2)
            DoSomething2;
        else
            DoSomethingElse2;
    }
    else
    {
        DoSomething;
        if(expression3)
        DoSomething3;
    }

        

    2.使用switch...case进行条件处理

      switch...case语法结构如下:

      switch(expression)

      {

        case LabelA:

          DoSomethingA;

          break;

        case LabelB:

          DoSomethingB;

          break;

        default:

          break;

      }

      其语法就是计算expression的值并与case的标签对比,如果值相同就执行该case下的语句,不相同就与下一个标签作比较直至到也没有相同的就执行default正常退出。

      下面给出输入阿拉伯数字1~5给出相应的希腊数字的代码示例;

    int Input_N;
    cin>>Iput_N;
    switch(Input_N) { case 1:
        cout<<"I"<<endl;
        break;
       case 2:
        cout<<"II"<<endl;
        break;
       case 3:
        cout<<"III"<<endl;
        break;
       case 4:
        cout<<"IV"<<endl;
        break;
       
    case 5:
        cout<<"V"<<endl;
        break;
       default:
        break;
    }

     3. ?:条件运算符

      expression ?: expression1:expression2;

      问号前表达式成立则选择计算expression1否则选择计算expression2。

      使用条件运算符?:选出两个数之间最大的一个:

    int Number1=0,Number2=0;
    cin>>Number1;
    cin>>Number2;
    int Max;
     Max=(Number1>Number2)?Number1:Number2;
          cout<<Max<<endl;

    4. while循环

      while循环语法结构如下:

        while(expression)

        {

          StatementBlock;

        }

      只要expression为true,就将执行该语句块,所以在循环过程中会出现expression为false的情况,否则循环很有可能永不停息的执行下去。

    5. do while循环

      do while循环与while的循环的区别在于是否在执行语句前进行了条件判断,do while循环保证了代码块语句至少被执行一次。

      do while循环语法结构如下: 

        do 

        {

          StatementBlock;

        }while(expression);

      注意:while循环和do...while的区别源自于编译器的顺序编译,do...while是有句末分号的。

    6. for循环

      for语句是一种更加复杂的循环,它允许我们指定执行一次的初始化语句(通常用来初始化计数器),判断退出条件(通常使用计数器),还可以在循环末尾执行一次操作(通常为计数器累加操作)。

      例如循环为数组输入输出各值的代码:

    int i, a[4];
    for (i = 0; i < 4; i++)//初始化语句,检查退出条件语句,计数器累加操作语句
    {
      cin >> a[i];
    }
    for (i = 0;i < 4; i++)
    {
      cout <<"第"<< i + 1 << "个数: "<<a[i] << endl;
    }

      注意:for语句中初始化语句、条件语句、操作语句都是根据需要可选的。

    7. continue 和 break

       while ,do...while 和 for循环都会有条件语句,如果条件为假就跳出循环,如果条件一直为真就会一直循环就是死循环。在很多时候死循环会导致程序崩溃,这是我们不期望发生的事情,而使用break

      和continue就可以修改循环行为,包括死循环。我们可以给循环一个条件使其使用break跳出循环,continue会使执行跳到循环开头,重新评估循环条件。

      注意:尽量不要使用break或continue,因为它们影响代码直观性,除非遇到不使用它们程序就无法正确或高效的运行的情况。

       

  • 相关阅读:
    妙趣横生的HTML5 Page Visibility API
    Django ElasticSearch Ionic 打造 GIS 移动应用 —— 架构设计
    HT for Web的HTML5树组件延迟加载技术实现
    mobileSite开发Tips
    [译] 沙箱中的间谍
    使用Javascript获取剪贴板图片的DataURL
    竖屏旋转摄像头预览数据90度
    centos下安装 gcc,g++,gdb
    centos7连接网络不可达的解决方法
    OpenGL里的坐标系统以及其变换
  • 原文地址:https://www.cnblogs.com/dulm/p/11230137.html
Copyright © 2011-2022 走看看