zoukankan      html  css  js  c++  java
  • 练习5.18

    5.18:说面下列循环的含义并改正其中的错误。

    (a)do

        int v1 , v2;

        cout<<" Please enter two numbers to sum: ";

        if(cin>>v1>>v2)

          cout<<" Sum is : "<<v1+v2<<endl;

        while(cin);

    (b)do {

        //...

       } while(int ival = get_response())

    (c)do {

         int ival = get_response();

       } while (ival);

    Ans:a)该程序的含义是定义两个变量,然后输入两个变量的值求其和,最后判断输入流当中是否有值,若有则继续,否则退出循环。C++规定do while语句在do之后如果有多条语句,需要将其使用花括号括起来形成一条复合语句(块),否则编译器会报错。

    修改之后:

      do {

        int v1 , v2;

        cout<<" Please enter two numbers to sum: ";

        if(cin>>v1>>v2)

          cout<<" Sum is : "<<v1+v2<<endl;

        } while(cin);

       b)该程序的含义是,执行循环体中的内容,然后判断变量ival的值是否为0,若不为0,跳出循环;但是C++语言规定不能在do while语句的条件部分定义变量。

    修改之后:

        int ival;

        do {

          //...

         } while(ival = get_response())

        c)该程序的含义与(b)一样,只不过值的获取是在循环体中。但是该程序定义的变量ival在循环体中定义,其作用域只在循环体当中,不能拿来作为while的条件。

    修改之后:

        int ival;

        do {

             ival = get_response();

         } while (ival);

  • 相关阅读:
    PHP学习九--会话控制session和cookie
    PHP学习八--正则表达式
    PHP学习六--类和对象
    PHP学习五--函数
    PHP学习四--数组
    《30天自制操作系统》day08——鼠标控制与32位模式切换
    java 中 静态块的作用
    学习(一)
    asp中 grideview 更新 无法获取值 解决办法
    ASP.NET中的GridView自带的编辑更新功能
  • 原文地址:https://www.cnblogs.com/Dark-King/p/9462896.html
Copyright © 2011-2022 走看看