C语言之运算符简介和循环语句格式
变量补充说明:
1. 变量名是可以用函数名的,不是关键字可以用变量。但要明确函数名表达变量还是函数。不能冲突!
2. Volatile int 可变变量 等同于int 。const int 不可变量(常量) 作用是使常量有更高的客观性。
运算符
一般用的多的运算符:
+ - * / () [] < > = << >> == <= >= ++ -- && ! != ||
+= -= *= /=
优先级:
( 括号 ) > ( * / ) > ( + - ) > ( ++ -- ) > ( && ! || )
前后++ --的区别:
i ++ 先运算 后自增 ++ i 先自增 后运算 i -- 先运算 后自减 -- i 先自减 后运算
函数加法规则
精度低的转向精度高的,结果为精度搞得。
比如:char i = 2 ; int j = 3 ;j=j + i ;i变成int型进行运算 结果为int型。
函数输出一般从右往左走。
位运算
与(&) 或(|)非(~)异或(^)左移(<<)右移(>>)
作用对二进制的每一位进行操作
与(&)n&=n
作用:一般用来清零(0&一个值来到达清零)获取某位(哪位要去哪位给1其余给0)
1 & 1 = 1 1 & 0 = 0 0 & 1 = 0 0 & 0 = 0
或(|)n|=n
作用:一般用于置位|上一个1来到达置1
1 | 1 = 1 1 | 0 = 0 0 | 1 = 0 0 | 0 = 0
非(~)n=~n
作用取反 按位取反
N=1111 1111 n=~n n=0000 0000
异或(^)
按位取反主要用于密码中
1^1=0 1^0=1 0^0=1 0^1=1
比如: 1111 1111 明文 0000 1111加密得到1111 0000 密文
1111 0000密文 0000 1111解密得到1111 1111明文
移位 (<<)(>>)
作用:一般用于数字算法优化左移一位x2右移一位除二
Value=value<<1;左移一位
无符号右移补零 有符号右移高位补符号位
左移低位补零
可以用移位取末位C=(unsigned char)c>>7;
前后++ --的区别:
i ++ 先运算 后自增 ++ i 先自增 后运算 i -- 先运算 后自减 -- i 先自减 后运算
函数加法规则
精度低的转向精度高的,结果为精度搞得。
比如:char i = 2 ; int j = 3 ; j=j + i ; i变成int型进行运算 结果为int型。
函数输出一般从右往左走。
循环语句
一般原则分而治之,分之和循环。
1. 循环结构
早期循环格式:
loop:
循环语句;
If(判断语句) goto End ;
goto loop ;
End:
Return 0 ;
C语言循环结构
一.While(判断语句){
循环语句;
}
二.Do{
循环语句;
}while(判断语句)
三. for(变量初始化:判断语句:变化量)
{
循环语句;
}
结束循环和继续循环
for (i = 0;i < 5; i++)
{
If ( 1 == i ) //为了避免程序出问题不好寻找,常量写在判断句前面
Continue; //循环继续,后面的语句不输出
if(1 == i)
Break; //循环结束
}