记录下学习C++primer plus路的历程,前面还有几章复习和编程练习,有空的时候再补上
/*******************************
1;入口条件循环和出口循环的区别?各种C++循环分别属于其中的哪一种
入口循环是先判断条件再循环,有可能不循环
出口循环是先执行一次循环,再判断,至少会循环一次
for 循环和while循环是入口循环,do..while是出口循环
****************************************************
2;如果下面的代码片段是有效程序的组成部分,它将打印什么内容?
int i;
for (i = 0; i < 5; i++)
cout << i;
cout << endl;
打印 01234
****************************************************
3;如果下面的代码片段是有效程序的组成部分,它将打印什么内容?
int j;
for (j = 0; j < 11; j +=3)
cout << j;
cout << endl << j << edl;
打印
0369
9
****************************************************
4;如果下面的代码片段是有效程序的组成部分,它将打印什么内容?
int j = 5;
while ( ++j < 9 )
cout << j++ << endl;
输出
6
8
原因:先j = 5;在while语句里作++j运算,因为前缀是先运算,因此此时j = 6,
而cout语言打印j++,而后缀是先赋值,此时的j还是6,但这一句完了后j就会变成7了
如果代码写成
int j = 5;
while ( ++j < 9 )
cout << j++ << endl;
cout << j << endl;
第一句 j = 5;代入while条件中,前缀是先运算,所以while运行时j = 6;
打伯++j < 9,即 6 < 9,条件成立,进入循环体,循环体打印j++,由于后缀
是先赋值后运算,此时j = 6,如果加上第四句,这一句是我私自加的,是
要说明第三句完成后此时才会打印7,所以上面一句j仍是等于6
接着这里j = 7 ,在while循环里,++j < 9即7 < 9成立,将7代入while循环,
而此时又遇到前缀,又要先运算,所以此时++j = 7 +1 =8,
进入下一句,后缀,于是j++先等于8,打印8,打印这一句完后执行j++ = 9,
进入循环体,++j =9 + 1 = 10 < 9不成立,跳出循环,所以这段代码只打印
6
8
*****************************************************
5;如果下面的代码片段是有效程序的组成部分,它将打印什么内容?
int k = 8;
do
cout << " k = " << k << endl;
while ( k++ < 5)
打印出
k = 8
*****************************************************
6;编写一个打印1、2、4、8、16、32、64的for循环,每轮循环都将计数变量的值乘以2
int j ;
for ( j = 1; j < 65; j *= 2)
cout << j << "、\t"; //或者cout << j << "、\t";
cout << endl;
*****************************************************
7;如何在循环体中包括多条语句?
用{
//这里用多条语句。
}
*****************************************************
8;下面的语句是否有效?如果无效,原因是什么?如果有效,它将完成什么工作?
int x = (1, 024);
有效,逗号运算符连接。值为右侧表达式的值,x 会等于024,由于024是八进制,打印出来就是20
下面的语句又如何呢?
int y;
y = 1, 024;
此时编译器会被解释成
(y = 1), 024,即y会被设置成17,而024不起任何作用
*****************************************************
9;在查看输入方面,cin >> ch同cin.get(ch)和ch = cin.get()有什么不同?
cin >> ch 在输入时不会读取空格及制表符,而ch.get(ch)和ch = cin.get()会读取空格以及制表符
*************************************************/
#include<iostream>
using namespace std;
void main()
{
int j ;
for ( j = 024; j < 65; j *= 2)
cout << j << "、\t";
cout << endl;
}
本文是C++ Primer Plus学习笔记的一部分,重点探讨了C++中的循环类型,包括for、while和do...while循环的特征及区别,并通过实例解析了循环中的条件判断和操作符的使用,同时提供了多个示例代码来展示不同循环结构的执行过程。
1358

被折叠的 条评论
为什么被折叠?



