算法处理的对象是数据,数据是以某种特定的形式存在的
数据类型
1字节(byte)=8位
基本数据类型: 整型 (short2字节, int 4字节, long 4字节)
浮点型(float 4字节.double 8字节,long double 16字节)
字符型(char 8字节)
布尔型(bool true(1)&flase(0))
枚举类型(enum)
构造数据类型:数组类型, 结构体类型(struct) 共用体类型(union)
其他: 指针类型(*) 空类型void)
常量:值不能改变的量。 符号常量:用一个标识符代表一个常量,常用大写
变量:值能改变的量。 命名常用小写,第一个字符为字母或下划线C区分大小写字母
基本数据类型:整型
整型常量: 表达方式三种:10进制;8进制(0开头);16进制(0x开头)
三种进制转换:除余法&乘幂法
整型变量: 数据以二进制形式存储,以补码的形式表示
正整数的补码与原码一样
负整数的补码是将其绝对值的二进制形式,按位取反加1
区分unsigned(无符号修饰符)与signed(有符号,缺省设置)
1.unsigned的二进制形式的首位表示数据的第一位;
signed的二进制形式的首位表示数据的正负(符号位);0为正,1为负
2.unsigned整型数据只能存放正数
3.unsigned整型数据的储存范围是signed的2倍
数据溢出:变量的值超出了数据类型的范围;当发生数据溢出,自动调整到数据类型能够表示的范围(也就是说数据的范围表示为一个圈,数据一旦溢出,但还是在圈内)(注意数据溢出)
当变量的值>最大值,变量的值-类型所表示数据范围
当变量的值<最小值,变量的值+类型所表示数据范围
基本数据类型:浮点型
浮点型常量表达方式:1.十进制小数形式(数字和小数点组成):0.123;0.5
2.指数形式:123e3或123E3代表123×10^3
规范化的指数形式:字母e(E)之前的小数部分中,小数点左边有且只有一位非零数字。如:2.3738e2
浮点型变量:数据类型以指数形式存储,分为小数部分和指数部分
浮点型精度问题:判断两个float型数据是否相等:
ABS(a-b)<=0.000001(科学计数:1e-6)
基本数据类型:字符型
字符常量:用一对单撇号括起来的一个字符,如:‘a‘每一个字符对应一个ACSII码值
C允许一种特殊形式的字符常量,以"\"开头的字符序列,转义字符。如‘\n‘
字符变量:只能存放一个字符,在内存占一个字节。字符在内存的存储形式是在内存单元存放的相应的ASCII码值,也就是整型数据;故一个字符数据可以以字符形式输出,也可以以整形形式输出
字符串常量:用一对双撇号括起来的字符序列,如:"China"
C规定:每一个字符串常量的结尾加一个“字符串结束标志”---‘\0‘
基本数据类型:布尔型
只有两个值true(1)和flase(0);常用来进行判断
基本数据类型:枚举型
将变量的值一一列举出来,变量的值只限于列举出来的值得范围内
一般形式:enum 变量名{ 枚举元素 };
说明:1.在C中,对枚举元素按常量处理,故称为枚举常量
2枚举常量是有值得,其值为从0开始:0,1,2......;也可以自行设定
3.枚举值可以用来作判断比较
4.一个整数不能直接赋给一个枚举变量,必须强转
运算符(以及优先级)
优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。表达式的结合次序取决于表达式中各种运算符的优先级。优先级高的运算符先结合,优先级低的运算符后结合,同一行中的运算符的优先级相同。
所有的优先级中,只有三个优先级是从右至左结合的,它们是单目运算符、条件运算符、赋值运算符。其它的都是从左至右结合。
单目运算符,所有的单目运算符具有相同的优先级,单目运算符优先级最高
优先级  | 运算符  | 名称或含义  | 使用形式  | 结合方向  | 说明  | 
1  | []  | 数组下标  | 数组名[整型表达式]  | 左到右  | |
()  | 圆括号  | (表达式)/函数名(形参表)  | |||
.  | 成员选择(对象)  | 对象.成员名  | |||
->  | 成员选择(指针)  | 对象指针->成员名  | |||
2  | -  | 负号运算符  | -表达式  | 右到左  | 单目运算符  | 
(类型)  | 强制类型转换  | (数据类型)表达式  | |||
++  | 自增运算符  | ++变量名/变量名++  | 单目运算符  | ||
--  | 自减运算符  | --变量名/变量名--  | 单目运算符  | ||
*  | 取值运算符  | *指针表达式  | 单目运算符  | ||
&  | 取地址运算符  | &左值表达式  | 单目运算符  | ||
!  | 逻辑非运算符  | !表达式  | 单目运算符  | ||
~  | 按位取反运算符  | ~表达式  | 单目运算符  | ||
sizeof  | 长度运算符  | sizeof 表达式/sizeof(类型)  | |||
3(算术运算符)  | /  | 除  | 表达式/表达式  | 左到右  | 双目运算符  | 
*  | 乘  | 表达式*表达式  | 双目运算符  | ||
%  | 余数(取模)  | 整型表达式%整型表达式  | 双目运算符  | ||
4(算术运算符)  | +  | 加  | 表达式+表达式  | 左到右  | 双目运算符  | 
-  | 减  | 表达式-表达式  | 双目运算符  | ||
5(移位运算符)  | <<  | 左移  | 表达式<<表达式  | 左到右  | 双目运算符  | 
>>  | 右移  | 表达式>>表达式  | 双目运算符  | ||
6(关系运算符)  | >  | 大于  | 表达式>表达式  | 左到右  | 双目运算符  | 
>=  | 大于等于  | 表达式>=表达式  | 双目运算符  | ||
<  | 小于  | 表达式<表达式  | 双目运算符  | ||
<=  | 小于等于  | 表达式<=表达式  | 双目运算符  | ||
7(关系运算符)  | ==  | 等于  | 表达式==表达式  | 左到右  | 双目运算符  | 
!=  | 不等于  | 表达式!= 表达式  | 双目运算符  | ||
8  | &  | 按位与  | 整型表达式&整型表达式  | 左到右  | 双目运算符  | 
9  | ^  | 按位异或  | 整型表达式^整型表达式  | 左到右  | 双目运算符  | 
10  | |  | 按位或  | 整型表达式|整型表达式  | 左到右  | 双目运算符  | 
11  | &&  | 逻辑与  | 表达式&&表达式  | 左到右  | 双目运算符  | 
12  | ||  | 逻辑或  | 表达式||表达式  | 左到右  | 双目运算符  | 
13  | ?:  | 条件运算符  | 表达式1? 表达式2: 表达式3  | 右到左  | 三目运算符  | 
14  | =  | 赋值运算符  | 变量=表达式  | 右到左  | |
/=  | 除后赋值  | 变量/=表达式  | |||
*=  | 乘后赋值  | 变量*=表达式  | |||
%=  | 取模后赋值  | 变量%=表达式  | |||
+=  | 加后赋值  | 变量+=表达式  | |||
-=  | 减后赋值  | 变量-=表达式  | |||
<<=  | 左移后赋值  | 变量<<=表达式  | |||
>>=  | 右移后赋值  | 变量>>=表达式  | |||
&=  | 按位与后赋值  | 变量&=表达式  | |||
^=  | 按位异或后赋值  | 变量^=表达式  | |||
|=  | 按位或后赋值  | 变量|=表达式  | |||
15  | ,  | 逗号运算符  | 表达式,表达式,…  | 左到右  | 从左向右顺序运算  | 
(表格在网上查询所得)
三种基本结构,语句
三种基本结构:顺序结构,选择结构,循环结构
语句:简单语句,复合语句{},顺序语句,条件语句(if,switch),循环语句(while,do while,for),转移语句(break,continue,goto)
注意点:if else语句的配对:就近原则;规范性
break与continue的区别
1.break用在switch语句和循环语句中
continue只能出现在循环体中
2.break跳出整个循环,执行循环体下面的语句
continue跳出当前这一次循环,进入下一次是否循环的判断
本文出自 “毕业---觉醒---行走” 博客,请务必保留此出处http://tjy888.blog.51cto.com/5576345/1714407
最最最最最最最最基础的C---数据类型与运算符,三种基本结构,语句
原文:http://tjy888.blog.51cto.com/5576345/1714407