变量

计算机中的变量是什么?

其实计算机中的变量是一片存储数据的内存空间,每一次使用变量就是对那个空间内的数据的读取、修改、清除。

 

变量类型与定义

为了提高计算机的运行效率,充分利用计算机的硬件资源,在不同情况下我们使用不同的类型的变量去存储信息。

初始阶段掌握几种基本类型的变量-> int(整型) double(双精浮点型) char(字符型),掌握这三中变量类型即可应对绝大多数题目了。

  1. 故名思意int只能存储整数,当我们将小数赋值给int型变量的时候,系统会直接抹去小数点后的数据,也就是只存储小数的整数部分(我们可以理解为向下取整)。
  2. 浮点数就是大家所理解的小数,但是和数学上的小数有点区别,浮点数的精度是有限的,数学上的小数是可以精度无限的(所以计算机数据又叫做离散数据)。相信大家了解到的浮点数分为量类型,单精浮点数(精度小数点后6-7位)和双精浮点数(精度小数点后15-16位),为了避免大家使用混乱和出现精度不够的情况尽量统一使用double型
  3. 字符型数据其本质上也是数字,不过这里我们将数字的含义改为对应的字符(详细对应关系见ASCII表),ASCII表中主要掌握0的码、A的码、a的码、相同字母的大小写之间的码距(32)。注意字符要放到单引号内

定义变量的方式:int a; -> 数据类型符 变量名;

注意变量名的命名,不可以用关键字、不可以用数字开头(总之别起乱七八糟的),在学习到后面要更加注意变量名的命名,不仅要自己看得懂也要别人一目了然。

 

运算

赋值 =

以前这个符号是用于判定,但是在程序设计中,一般叫做赋值,优先级最低,把右边变量或常量的数据赋值到左边的变量。

 

数学运算符:+ - * / %

这里多出来的运算符就是%,如:7 % 3 = 1,就是将前一个数整除后一个数得到余数。取余的用途很广,比如可以x%10取得x的个位数依次类推。

 

关系运算符:>  <   <=   >=   ==   !=

这里要理解做判断是用==,很多时候我们在做判断时可能会误写为=。

另外,关系运算也是一种运算,所以会有一个结果。C语言内,正确的运算结果为1,错误的运算结果为0。

关系运算符是不可以连续使用的,只能比较两个量之间的关系。假使如下一个例子:a < b < c ,注意这里是不会报错的,但是程序设计逻辑错误,a < b会先运算得到一个结果(0或1),然后用那个结果和c做比较,这显然和我们的设计思路不合,正确的应该为a < b && b < c。

 

逻辑运算符:&&(与) ||(或) ! (非)

&& 左右两边的值同时为非零的时候,这个式子运算结果为真(1&&1 == 1  1&&0 == 0)

|| 左右两边的值同时为零的时候,这个式子的运算结果为假(0||0 == 0  1||0 == 1)

! 取反,非零转化为0,0转化为非零。(!0 == 1   !2 = 0)

 

复合运算符:+=  -=  *=  /=  %=  ++  --

以上为常用的复合运算符,还有些不列举。

+=  例如:a += b; 等效于 a = a + b; 其实就是懒,少些一些。其余同理。

++  这个运算符多少有点打脑壳,但是理解了真好用。如:int a = 1, b = 0; b = ++a;这段代码就是让a先加一变为2,然后将a的值赋值给b,所以a==2, b==2;int a = 1, b = 0; b = a++;这段代码的意思是先将a赋值给b,b就等于1了,然后让a加一,所以a==2, b == 1。总结:++在前先加后用,++在后先用后加。(++在后直接忽略++做运算,算完后再让变量加一,++在前变量直接加一然后变量参加整体的运算)