进制转换
在我的Java基础知识整理,补充内容,里面有十进制和二进制之间的转换,我这里就不再写十进制和二进制之间的转化了。下面来写一下二进制和八进制,二进制和十六进制之间的转换。首先看一下数值对应表


有了上面的对应表下面我来说如何转化。
二进制和八进制如何转换
将二进制数自右向左每三位分成一段(不足三位,左边用0补齐),然后将二进制每段的三位转为八进制的一位。例如00101010
每三位分成一段:000 101 010
010→2 101→5 000→0
将替换结果组合,组合后的八进制为0052(注意八进制必须以0开头)。
八进制转换为二进制的过程正好相反。自己思考
二进制和十六进制如何转换
将二进制每四位数分成一段(不足四位则用0补齐)再查转换表,例如01010110
每四位分成一段:0101 0110
0101→6 0101→5
将替换结果组合,组合后的十六进制为0X或0x(注意十六进制必须以0x或0X结尾)
十六进制正好相反。自己思考
进制转换表都是有规律的,找到规律很容易记住
常量与变量
常量
常量又称常数,是指在程序运行过程中其值不可改变的量。C语言中的常量可分为整形常量、实型常量、字符型常量、字符串型常量和符号常量。
1)整形常量:整形常量又称整数。C语言中,整数可用三种形式表示:十进制整数、八进制整数和十六进制整数。
2)实型也称为浮点型,实型常量又称为实数或浮点数,也就是在数学中用到的小数。C语言中,实型常量采用十进制,它有两种形式:十进制小数形式和指数形式。
3)字符型常量
有两种形式的字符常量:
普通字符:用单引号括起来的单个字符,如'a'、'Z'、'3'、'?'、'#'。字符常量储存在内存中时,并不是储存字符(如a、Z、#等)本身,而是存储其ASCll码。
转义字符:有些字符是无法用一般形式来表示的,我们可以用转义字符来表示。转义字符是以字符“ \ ”开头的字符序列,例如“ \n ”表示一个换行符、“ \t ”表示一个制表符。
4)字符串常量:字符串常量是用一对双引号括起来的字符序列,例如“hello”,“123”,“itcast”等。
5)符号常量:C语言中可以用一个标识符来表示一个常量,这种常量称为符号常量。符号常量在使用前必须先定义,其语法格式如下
# define 标识符 常量
变量
在程序运行期间,可能会用到一些临时数据,应用程序会将这些数据保存在一些内存单元中 ,每个内存单元会将这些数据保存在一些内存单元中,每个内存单元都用一个标识符来标识。这些用来引用计算机内存地址的标识符称为变量,定义的标识符就是变量名,内存单元中储存的数据就是变量的值。
变量的数据类型
在应用程序中,由于数据储存时所需要的容量各不相同,因此,为了区分不同的数据,需要将数据划分为不同的类型。C语言中的数据类型有四种,分别是基本类型、构造类型、指针类型、空类型。
先说一下基本类型
1)整形变量:在程序开发中经常会遇到0、-100、1024等数字,这些数字都可称为整形数据。整形数据就是一个不包含小数的部分的数。在C语言中,根据数值的取值范围,可以将整型分为短整型(short int)、基本整形(int)和长整型(long int)。
2)实型变量:实型变量也可以称为浮点型变量,浮点型变量是用来存储小数数值的。在C语言中,浮点型变量分为两种:单精度浮点数(float)、双精度浮点数(double)。double型变量所表示的浮点数比float型更精确。
3)字符型变量:用于储存一个单一的字符,在C语言中用“char”表示,每个字符变量占用1个字节。在给字符型变量赋值时,需要用一对英文半角格式的单引号(')把字符括起来,例如,' A ' 的定义方式如下
char ch = ' A '; // 为一个char类型的变量赋值字符 ' A '
4)枚举类型变量:在日常生活中有许多对象的值是有限的、可以一一列举的。例如一星期内只有七天、一年只有十二个月等等。C语言提供了一种称为“枚举”的类型来定义值可以被一一列举,且取值不能超过定义范围的变量。枚举的声明方式比较特殊,具体格式如下:
enum 枚举名 { 标识符 1= 整形常量 1,标识符 2 =整形常量2,… };
在上述代码中,“enum”表示枚举的关键字,枚举名表示枚举对象的名称。
printf()函数和 scanf()函数
在C语言开发中,经常会进行一些输入输出操作,为此C语言提供了printf()函数和scanf()函数。其中printf()函数用于向控制台输出字符,scanf()函数用于读取用户的输入,下面将分别讲解这两个函数的用法。
1)printf()函数
printf()函数可以通过格式控制字符,输出多个任意类型的数据。printf()函数中常用的格式控制字符如表所示。

以上这些控制符可以让printf()输出指定类型的数据。
2)scanf()函数
scanf()函数负责从标准输入设备(一般指键盘上)接收用户的输入,它可以灵活接收各种类型的数据,如字符串、字符、整形、浮点数等,scanf()也可以通过格式控制字符控制用户的输入,其用法与printf()函数一样。
需要注意的是,scanf()函数接收的是变量的地址,一个变量是如何取的地址呢?仅需要在前面加个“&”符号就可以。
网友评论