【 C语言学习笔记(1)】
C语言学习笔记(1)
原因
为了准备复试,因此重新学习C语言,本文用的是谭浩强第五版的课本。
1.算法——程序的灵魂
1.1程序=算法+数据结构
1.2算法的特性
1.有穷性 2.确定性 3.有零个或多个输入 4.有一个或多个输出 5.有效性
1.3 怎样表示一个算法
1.3.1 三种基本结构和改进的流程图
1.顺序结构 2.选择结构 3.循环结构
1.4结构化程序设计方法
采用以下方法来保证得到结构化的程序 1.自顶向下 2.逐步细化 3.模块化设计 4.结构化编码
2.最简单的C程序设计-顺序程序设计
2.1 数据的表现形式及其运算
2.1.1 常量和变量
实型常量
注意:e或者E之前必须有数字,且e或E后面必须为整数
字符常量
从其字面形式上即可识别常量成为‘字面常量’或‘直接常量’。字面常量是没有名字的不变量。
符号常量 用#define指令,指定一个符号名称代表一个常量。 使用符号常量的好处: 1.含义清楚 2.在需要改变程序中多出用到的同一个变量时,能做到‘一改全改’
注意:要区分符号常量和变量,不要把符号常量误认为变量,符号常量不占内存,只是一个临时符号,代表一个值,在预编译之后这个符号就不存在了,故不能对符号常量赋新值。为了与变量名相区别,习惯上符号常量用大写标识,如PI等。
常变量 可以说,常变量是有名字的不变量,而常量是没有名字的不变量。 从使用的角度看,常变量具有符号常量的优点,而且使用更方便。有个常变量以后,可以不必多用符号常量 标识符 C语言规定标识符只能由字母、数字、下划线3种字符组成,且第一个字符必须为字母或下划线。
注意:编译系统认为大写字母和小写字母是两个不同的字符
2.1.2整型数据
基本整型 VIsual C++为每一个整型数据分配4个字节(32位)。在存储单元中的存储方式是:用整型的补码形式存放。 求负数的补码的方法是:先将此数的绝对值写成二进制形式,然后对其所有二进位取反,再加一。(正数的补码是它自己)。 如果给整型变量分配4个字节(Visual C++ ),其能容纳的数值范围为-32768~32767 短整型(short int) 分配2个字节 长整型(long int) 类型名为long int 或 long。所占字节大小:4个字节 双长整型(long long int) 类型名为long long int 或 long long。所占字节大小:8个字节 可以在类型符号前面加上修饰符 unsigned,表示指定该变量是‘无符号整型’类型,如果加上修饰符 signed,则是‘有符号类型’,如果未指定,默认是‘有符号类型’。 对无符号整型数据用“%u”格式输出。%u表示无符号十进制的格式输出。
2.1.3字符型数据
字符与字符代码 ASCII代码最多用7个二进制就可以表示,所以在C语言种,指定用一个字节(8位)存储一个字符
2.1.4 浮点型数据
由于小数点位置可以浮动,所以实数的指数形式称为浮点数。
float型(单精度) 小数部分占的位(bit)数越多,数的有效数字越多,精度也就越高。指数部分占的位数越多,则能表示的数值范围越大。float型数据能得到6位有效数字。 double(双精度) 在c语言种进行浮点数的算术运算时,将float型数据都自动转换为double型,然后进行运算。 long double 在Visual C++中,对 long double 和double 一样处理,分配8个字节。
2.1.4数据类型注意点
1.长整型在数的末尾加L或l ,例:long a=18888888L; 2.浮点型float在末尾加f或F,