在第二天培训中我们上午首先学习了常量和变量。常量,顾名思义就是不能被改变的量,在c语言中通常是宏定义去设置,格式是#define+宏名+常量,如#define PI 3.14就是定义了一个常量。而变量就是可以被改变的量,在内存开辟一个存储空间用于存储数据。变量必须先定义再使用。变量的类型有局部变量和全局变量两种。局部变量定义在{}里面。反之,全局变量定义在{}之外就是全数据区。使用变量采取赋值和输入输出方式,例如赋值就是将一个数赋值给这个变量:int a ;a = 20;.老师接着又介绍printf和scanf两种函数。printf为输出函数并且输出””里面的内容,用法是printf(“hello world”);。这样屏幕上就会显示hello world。scanf为输入函数并且将接受输入的数据传到内存中。用法是 scanf(“格式控制符”,内存地址);。内存地址是取地址符+变量名:&a。列如Scanf(“%d”,&a); 。其中a是上面定义的变量。
下午讲了进制转换、数据存储、数据溢出。进制转换是十进制、二进制、八进制和十六进制的转换。十进制转其他进制的方法是:除以进制数 得到余数,知道商为0,最后将余数逆序排列就成功转化完成了。其他进制转成十进制的方法是:相应位上的数字*权重再进行分别相加。数据存储的单位是:字节 位。这两者的关系是1字节=8位。并且一个字节直接可以存储两个16位进制数,如0xEF转为二进制是0B1110 1111。数据存储一律采用补码储存,正数是:原码=反码=补码。负数则不同,负数原码:就是一个数据本身的二进制表示形式,从原码上一般能看出一个数据是多少。反码:保持符号位不变,其他位取反。补码:反码+1,最终才能存入计算机里面的二进制数据。那为啥负数的补码这么复杂呢?原因有两点。第一,区分正负数。第二,计算机里面加法器没有减法器,要将减法变成加法。接下来是数据溢出,因为数据类型有范围,存储的数据超出这个范围就存不下。这个溢出也是有说法的,会遵循环形转换规律。根据这个规律找出计算规律。如下
计算规律:数值如果是正向超出就-一圈的数据个数看是不是在数据类型的范围内。
如果在就找到对应的数值
如果不在继续-一圈的数据个数直到找到一个数据在在数据类型的范围内。
数值如果是负向超出+一圈的数据个数看是不是在数据类型的范围内。
如果在就找到对应的数值
如果不在继续+一圈的数据个数直到找到一个数据在在数据类型的范围内。
好了,今天的忙碌到此为止!
5141

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



