练习3.73.83.93.11

Posted dark-king

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了练习3.73.83.93.11相关的知识,希望对你有一定的参考价值。

3.7:就上一题完成的程序而言,如果将循环控制变量的类型设为char将会发生什么?先估计一下结果,然后再进行编程验证。

得到的结果与上一程序一样。

3.8:分别使用while循环和传统的for循环重写第一题的程序,你觉得哪种形式更好呢?为什么?

我觉得范围for语句最好,形式上最简便,而且不需要去判断字符串的大小,其次是while语句,相对简便,但是对于本程序来讲,需要知道string类的对象大小,防止出现未定义的结果,最后是传统for循环语句,相对繁琐。

3.9:下面的程序有何作用?它合法吗?如果不合法,为什么?

string s;

cout<<s[0]<<endl;

Ans:不合法。该程序的string类的对象被初始化为空串,使用下标运算符访问对象时,不能访问位置上为空的字符,会出现无法预知的结果。(我在Linux下测试,编译能通过)。

3.11:下面的范围for语句合法吗?如果合法,c的类型是什么?

const string s=" keep out !  ";

for(auto &c:s)

{/*.....*/}

Ans:如果只是访问string对象的值的话,合法,c是绑定到常量的引用。;如果是要修改string对象的值的话不合法。

以上是关于练习3.73.83.93.11的主要内容,如果未能解决你的问题,请参考以下文章

Python输入输出练习,运算练习,turtle初步练习

Python输入输出练习,运算练习,turtle初步练习

Python输入输出练习,运算练习,turtle初步练习

练习_使用Lambda表达式无参数无返回值的练习练习_使用Lambda表达式有参数有返回值的练习

Python输入输出练习,运算练习,turtle初步练习

征服指针——指针练习