c++教程课后练习题

1:在一个循环中读入两个int并打印出来,如果遇到’|’就退出程序。
分析:
从键盘输入中读取两个数,有可能读的是非数值类型,所以第一点,非数值类型需要考虑到;
两个int + 一个字符是题目中需要体现的。那么读取出来后的存储类型就需要提前设计好。因为从键盘输入读出来的数据不能确定是不是数值类型,所以不能放在int 或是char上,正好string倒是可以存放,存放之后可以转成int;
一次读两个数,如果用户输入了一个数值,一个结束字符,或者输入了100个数值,或者只输入一个,那肯定不能只用一个string来存储,需要用到vector。

整个程序的逻辑比较简单,需要注意的只是存放键盘输入的类型。

    std::vector<std::string> vec;
    std::string str;
    while ( std::cin >> str )
    {
      if ( std::string::npos != str.find('|') )
        break;

      vec.push_back(str);
      if ( vec.size() >= 2 )
      {
        std::stringstream ss;
        int a { -1 };
        int b { -1 };

        ss << vec.at(0);
        ss >> a;
        ss.str("");
        ss.clear();
        ss << vec.at(1);
        ss >> b;

        if ( -1 != a && -1 != b)
          std::cout << "a = " << a << " b = " << b << std::endl;

        vec.clear();

        std::cout << "please enter two int: " << std::endl;
      }
    }

这个程序的并没有判断用户输入-1的情况,还需要完善

什么是计算?computation
在c++通过一些输入产生一些输出的过程,称为计算。
eg:通过键盘输入,到最后的屏幕显示一些东西,也可以称为计算的一个例子

表达式操作在进行时,需要注意哪些方面
正确性是第一要保证的。简单性除了保证正确性更多的是表达了可读性(表达式的可读性尤为重要)。高效性是保证正确性的基础上,应尽可能达到的目标。

什么是符号常量,什么是魔法常量?
c++新书上丢出来的两个称呼:
常量 比如说3.14159半径相关的参数,如果在代码中用const或是constexpr来修饰一个常变量(不变的变量,简称 常量),那这个常变量可以称为符号常量。如果代码中全是用3.14来代替π出现的地方,那这个3.14被称为魔法常量。如果有几百个出现3.14的地方,其中有一个写成了3.41,那乐子就大了。可能是应为这样,所以戏称魔法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值