C语言:面向过程的语言。
常量:程序运行过程中,其值不能改变的量。
变量:程序运行过程中,其值可改变的量。
变量的本质(根本原因):任何变量都会占用内存空间。
单位:1Byte = 8bit;字节是描述存储空间的最小单位。
**标识符规则**:
1. 只能由数字、字母、下划线组成;
2. 首字符必须为字母或下划线(区分大小写);
3. 不能使用关键字(如 `break`, `char`, `long`...),避免使用(二类字)保留标识符(如 `define`'include')。
一.整型常量.
3种表示:
十进制整数 : 如123. -164.
八进制整数: 用0开头.
eg:83=(123)8=1×8²+2×8¹+3×8° <0 ~7>
十六进制整数:用0x开头.
eg:0x123=123)16=1×16²+2×161+3×16°=291.<0~F>
进制转换:八→二: 三位一划.十六→二 : 四位一划. 缺位往前补0.
八进制转换表:
0 | 000 |
1 | 001 |
2 | 010 |
3 | 011 |
4 | 100 |
5 | 101 |
6 | 110 |
7 | 111 |
十六进制转换表:
0 | 0000 | 8 | 1000 |
1 | 0001 | 9 | 1001 |
2 | 0010 | A | 1010 |
3 | 0011 | B | 1011 |
4 | 0100 | C | 1100 |
5 | 0101 | D | 1101 |
6 | 0110 | E | 1110 |
7 | 0111 | F | 1111 |
二.整型变量.
①short <-2^15~2^15-1>
②unsigned short. <0~2^16-1>
③int <-2^31~2^31-1>
④unsigned int <0~2^32-1>
⑤long <-2^63~-2^63-1>
⑥unsigned long <0~2^64-1>
⑦ long long
⑧unsigned long long
eg:int.在内存当中存储方式为:小端存储.
eg:0×12345678
78 |
56 |
34 |
12 |
负数补码=其正数原码.按位取反 (反码)+1.正数的补码为原码本身“1”为负. “0”为正
int & unsigned int (4Byte)
short int &unsigned short int ( 2 Byte)
long & unsigned long(8 Byte)
long long & unsingned long long (8 Byte).
三、浮点型常量
2种表示:
十进制小数 eg:123.0、0.0
指数形式 eg:123e3/123E3都表示123×10³
注:e(E)前必有数字,且e后的指数为整数。 非法:eg:e3、2.1e3.5、e3、e
四、浮点型变量
单精度:float (4Byte)
双精度:Double (8Byte)
存放形式:符号位:1 阶码:8 尾数:23
以f:-100、125为例:
因为“-” 所以符号位:“1”
阶码:将-100、125转化为二进制:1100100.001可化为1、100100001×2^6的次数+127:即127+6=133化为二进制:10000101即阶码
尾数:将1.100100001小数部分补齐,后补0至满足32位即:
1100 0001 0000 1000 0101 0000 0000 0000 0000
∴存放时为:
00 |
40 |
c8 |
c2 |
在C中,在任何运算中一定要保证左右两边数据类型相符合!(eg:浮点型0.9、0.6、0.3…)
五.字符型数据
字符型变量: char (1 Byte)
取值范围:−2^7~ 2^7−1 即(−128~127)
%C:输出字符型.
字符型常量: 将一个字符放入单引号' '中. eg: ‘H' 'A'
若单引号中出现多个字符 eg: 'HBA'会 输出 A ’HB‘会输出B. (不要这么写!)
ASCII表
练习:
1、请编译程序将“China ”译成密码,用原来字母后面的第4个字母代替原来的字母。例如:字母A后面的第四个字母是E,用E代替A。因此"China"应译为"Glmre"。请编一道程序,用赋初值的方法使c1,c2,c3,c4,c5这5个变量分别为'C','h','i','n','a',经过运算,使c1,c2,c3,c4,c5分别为'G','l','m','r','e',然后输出。
2、编写程序将"CHINA"转换位小写输出。
心得:知识点难度不大但比较繁琐比较多,需要多加记忆,计算时要细心!