1、强制类型转换只是暂时进行数据类型的改变而得到一个中间变量,原变量并没有发生改变。
2、++i 与i++有什么不一样?区别在于++i先加1后判断。i++是先判断后加1.
例:i=0;i++=0;++i=1;
3、a+=3 ==a=a+3;
x*=y+3 ==x*(y+3);
x/=x-4 ==x/(x-4);
i+=j-- ==i+(j--);
a+ =a-=a*a;
4、<CR>是换行的意思
5、cin不能输入空格和回车
6、endl就是回车
7、cinget()输入一个字符
8、setw(数字):指定输出项宽度,头文件:#include <iomanip>,只对设定的一项有效(右对齐);
9、关于if(!)
if(!a)就是一个判断语句,判断表达式 !a 的真假,进而决定是否执行后续操作。
如果a是一个变量
当a等于0时,!a=1(为真),执行后续操作;
当a不等于0时,!a=0(为假),不执行后续操作;
如果a是一个表达式
将表达式的值计算出来,当成变量来操作,判断过程同上。
if(a) == a=1;
10、条件运算符:表达式1:?表达式2:表达式3;
11、switch语句后面加不加break有什么区别?
不加的话有个问题就是,比如,你有5个CASE语句,当第二个case与switch条件相同时 执行完第二个case 然后会顺序把下面的所有case语句执行完,如果你想让程序只执行相应的case就在后面加上break,这样就只执行这一个然后跳出
12、while(y--);相当于一个while(){};空的while语句,当y=0时,不再进入循环
2、++i 与i++有什么不一样?区别在于++i先加1后判断。i++是先判断后加1.
例:i=0;i++=0;++i=1;
3、a+=3 ==a=a+3;
x*=y+3 ==x*(y+3);
x/=x-4 ==x/(x-4);
i+=j-- ==i+(j--);
a+ =a-=a*a;
4、<CR>是换行的意思
5、cin不能输入空格和回车
6、endl就是回车
7、cinget()输入一个字符
8、setw(数字):指定输出项宽度,头文件:#include <iomanip>,只对设定的一项有效(右对齐);
9、关于if(!)
if(!a)就是一个判断语句,判断表达式 !a 的真假,进而决定是否执行后续操作。
如果a是一个变量
当a等于0时,!a=1(为真),执行后续操作;
当a不等于0时,!a=0(为假),不执行后续操作;
如果a是一个表达式
将表达式的值计算出来,当成变量来操作,判断过程同上。
if(a) == a=1;
10、条件运算符:表达式1:?表达式2:表达式3;
11、switch语句后面加不加break有什么区别?
不加的话有个问题就是,比如,你有5个CASE语句,当第二个case与switch条件相同时 执行完第二个case 然后会顺序把下面的所有case语句执行完,如果你想让程序只执行相应的case就在后面加上break,这样就只执行这一个然后跳出
12、while(y--);相当于一个while(){};空的while语句,当y=0时,不再进入循环
13、while(k=0)时,k=0是赋值语句,循环永远不进行。
14、while(y),当y不为0时进入循环。
15、break直接跳出循环,continue只是跳出本次循环。
16、cin只能输入一个单词,如果要输入一行单词,用cin.getline(数组名,数组空间树)