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;
return 0;

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,因为它们影响代码直观性,除非遇到不使用它们程序就无法正确或高效的运行的情况。

   

原文地址:https://www.cnblogs.com/dulm/p/11230137.html

时间: 2024-11-05 18:32:05

C++学习 之 控制程序流程的相关文章

重新开始学习javase_控制程序流程

@学习thinking in java 二.控制程序流程 负数使用 Java 运算符:运算符以一个或多个自变量为基础,可生成一个新值.自变量采用与原始方法调用不同的一种形式,但效果是相同的.根据以前写程序的经验,运算符的常规概念应该不难理解.加号(+).减号和负号(-).乘号(*).除号(/)以及等号(=)的用法与其他所有编程语言都是类似的.所有运算符都能根据自己的运算对象生成一个值.除此以外,一个运算符可改变运算对象的值,这叫作“副作用”(Side Effect).运算符最常见的用途就是修改自

控制程序流程

我叫鱼汤,是一名菜鸡.如有高手路过,望指点.望传功. 这一篇是要整理我的三份笔记,主要内容就是java里几个简单的控制程序流程的方法,程序自然执行顺序是由上而下依次执行,但是有时这样达不到我们想要的目的,这里就会用到流程控制的方法. 一.选择 1. 单分支if语句 if(布尔表达式){ //布尔表达式为true时所执行的语句: } 如果()里的条件得到满足,{}里的语句才回执行,主要用于只有一个筛选要求. 2. 双分支if语句 if(布尔表达式) { //布尔表达式为true时所执行的语句: }

4.JAVA编程思想——控制程序流程

欢迎转载,转载请标明出处:http://blog.csdn.net/notbaron/article/details/51040228 控制程序流程 在Java 里,我们利用运算符操纵对象和数据,并用执行控制语句作出选择.Java 是建立在C++基础上的,所以对C 和C++程序员来说,对Java 这方面的大多数语句和运算符都应是非常熟悉的.当然,Java 也进行了自己的一些改进与简化工作. 1      使用 Java 运算符 加号(+).减号和负号(-).乘号(*).除号(/)以及等号(=)的

TinyOS学习:安装流程

还是记一下TinyOS的安装 第一步:安装java jdk,请移步:http://www.oracle.com/technetwork/java/javase/downloads/index.html下载 尽量下载1.6版本吧..别太新就行.我用的1.7 台式机用的1.6都是可以用的 配置jdk很简单了,解压到/usr/lib/jvm文件夹下,(没有就新建).然后配置环境变量 配置到.bashrc或者/etc/profile下 最后添加: #====================jdk pro

读TIJ -3 控制程序流程

<Think in java·第 3 章控制程序流程> 这一章应该不会涉及"思想",<编程导论(Java)·0.2.2 操作符和操作数>后,将相关内容压缩成一节<第3章功能抽象·3.2实现>. 3.1 使用Java 运算符 副作用(side effect):[p98:副作用一般是针对操作(表达式)而言的,一个操作/表达式有"副作用"是指在对该表达式求值时,会改变程序的一个或多个数据,以致再次对该表达式求值时,可能会得出不同的结果.

控制程序流程(2)

3.2 执行控制   Java使用了C的全部控制语句,所以假期您以前用C或C++编程,其中大多数都应是非常熟悉的.大多数程序化的编程语言都提供了某种形式的控制语句,这在语言间通常是共通的.在Java里,涉及的关键字包括if-else.while.do-while.for以及一个名为switch的选择语句.然而,Java并不支持非常有害的goto(它仍是解决某些特殊问题的权宜之计).仍然可以进行象goto那样的跳转,但比典型的goto要局限多了. 3.2.1 真和假 所有条件语句都利用条件表达式的

Android Camera fw学习(四)-recording流程分析

Android Camera fw学习(四)-recording流程分析 备注:备注:本文是Android5.1学习笔记.博文按照软件启动流程分析.  且行且惜,一步一个脚印,这次学习camera Video.虽然标题是recording流程分析,但这里很多和preview是相似的(包含更新,创建Stream,创建Request),这里主要分析MediaRecorder对象创建.video帧监听对象注册.帧可用事件以及一系列callback流程分析. 一.认识video(mediaRecorde

《21天学会C++》学习笔记第7章控制程序流程

1.迭代意味着重复做同样的工作.迭代的主要方法是循环. 2.while()循环,do...while()循环,for循环, 3.注意do...while()循环的do是真的要出现的,不仅仅是一个标志而已: 1 #include<iostream> 2 int main() 3 { 4 using namespace std; 5 int counter; 6 cout<<"how many hellows"; 7 cin>>counter; 8 do

oVirt (Open Virtual) 之 VDSM 学习笔记 (二) 流程追踪

概述: 追踪 VDSM 启动后的代码大概流程,是继 vdsm/vdsm 文件学习后的继续. Let's go! 从 “def serve_clients(log)” 开始 1 def serve_clients(log): 2 cif = None 3 irs = None 4 scheduler = None 5 running = [True] 6 7 def sigtermHandler(signum, frame): 8 log.debug("Received signal %s&quo