C语言复习提纲复习手册
《高级语言程序设计》期末总复习 基础知识 (1)C语言程序的组成:由一个或多个文件组成,每个文件由一个或多个函数组成, 函数是C程序的基本单位,一个程序有且只有一个main()函数,这是程序的入口函数 (2)函数的组成:函数首部和函数体 (3)C语言用/*.*/做注释 (4)从C的源程序到可执行的文件的全过程:编辑、编译、链接最后才能运行,各阶 段生成的文件扩展名分别为:.c、.obj、.,头文件的扩展名:.h (5)C语言中的关键字 auto :声明自动变量,一般不使用 double :声明双精度变量或函数 int:声明整型变量或函数 struct:声明结构体变量或函数 break:跳出当前循环 else :条件语句否定分支(与if连用) long :声明长整型变量或函数 switch :用于开关语句 case:开关语句分支 enum :声明枚举类型 register:声明积存器变量 typedef:用以给数据类型取别名(当然还有其他作用) char :声明字符型变量或函数 extern:声明变量是在其他文件正声明(也可以看做是引用变量) return :了程序返回语句(可以带参数,也看不带参数) union:声明联合数据类型 const :声明只读变量 float:声明浮点型变量或函数 short :声明短整型变量或函数 unsigned:声明无符号类型变量或函数 continue:结束当前循环,开始下一轮循环 for: 一种循环语句(可意会不可言传) signed:生命有符号类型变量或函数 void :声明函数无返回值或无参数,声明无类型指针(基本上就这二个作用) default:开关语句中的“其他”分支 goto:无条件跳转语句 sizeof :计算数据类型长度 volatile:说明变量在程序执行中可被隐含地改变 do :循环语句的循环体 while :循环语句的循环条件 static :声明静态变量 if::条件语句 注意: ① 关键字都是小写的 ② sizeof ()是一个关键字,不是函数 数据类型、常量与变量 (1)C中数据类型分为:基本类型、构造类型、指针类型、空类型四大类,其中基本 类型包括整型、实型、字符型、枚举型;构造类型有:数组类型、结构体类型、共同体类型, 指针类型的特殊性在于其变量中存放的是内存地址信息而不是内存中的值。 整型 实型(浮点型) 字符型 r单精度实型 L双精度实型 「数组类型 构造类型-<结构体类型 -共用体类型 指针类型 I空类型 此外,数据类型前面还可以加上修饰符,共有两组signed/unsigned, short/long,在一些 情况下可以省略。因此,C语言中常用的基本类型有如下多种: 基本类型 加上修饰符之后 简称 整型 signed short int short signed int int signed long int long unsigned short int unsigned int unsigned long int 实型 float double long double 字符型 signed char char unsigned char 需要注意的是:TC2.0下,各种类型所占的字节数与Visual C++6.0所占字节数多数不 相同。 (2)C语言源程序中所处理的任何数据(常量或变量)都是属于某一种数据类型的, 数据类型将决定该类型的值在内存中占用空间的大小、数据值的表现形式及数据范围、可进 行的运算及操作、变量值的组成情况等。 (3)C语言对变量的要求:先定义后使用。 (4)正确定义标识符的要求: ① 是否以字母或下划线开头; ② 是否是只有字母、数字、下划线的序列; ③ 是否选用了关键字。 (5) 常量与变量: 常量是值不可变化的量,有两种表现形式:符号常量和字面常量,C是定义符号常量只 有一种方法: #define常量名串 C中的字面常量有五种:整型常量、实型常量、字符常量、字符串常量、枚举常量 整型常量有二种合法制式:十、八(如012)、十六(如oxa3),另外还可以有L (1)、U (u)作后缀,分别表示长整型及无符号常量。 实型常量有两种表示形式:小数形式、指数形式,小数形式要求一定要有小数点,小数 点前面或后面的数字可以缺省;指数形式一定要有E (e),并且在其左边一定是合法的整数 或小数形式的实数,右边必须是合法的整数。 字符常量是以一对单”括起的单个字符( \191,错),需要特别注意的是以右 开头的转义 字符:’\n 、 \121 、’\xa5 , 常用的转义字符及其含义 转义字符转义字符的意义 \n回车换行 \t横向跳到下一制表位置 \v竖向跳格 \b退格 \r回车 \f走纸换页 \\反斜线符“ \ 单引号符 \a鸣铃 字符常量的大小就是其ASCII码值的大小。 小写字母转大写字母:ch=ch-32;大写字母转小写字母:ch=ch+32; 字符串常量是以一对双引号括起的0个或多个字符,需要特别注意字符串的长度与字符 串所占的字节数之间相差1 注意:需要记住常见转义字符的含义,及 A 、 a 、 0 、 \n 、 等字符的ASCII 码。 (6) 在程序中常常需要对变量赋初值,以便使用变量。语言程序中可有多种方法,在 定义时赋以初值的方法,这种方法称为初始化。在变量说明中赋初值的一般形式为: 类型说明符变量1=值1,变量2=值2,……;例如: 注意:定义时不允许连续赋值,int a=b=c=5;是不合法的。 (5)变量类型的转换 变量的数据类型是可以转换的。转换的方法有两种,自动转换和强制转换。 自动转换发生在不同数据类型的量混合运算时,由编译系统自动完成。自动转换遵 循以下规则: ① 若参与运算量的类型不同,则先转换成同一类型,然后进行运算。 ② 转换按数据长度增加的方向进行,以保证精度不降低。如int型和long型运算时, 先把int量转成long型后再进行运算。 ③ 所有的浮点运算都是以双精度进行的,即使仅含float单精度量运算的表达式, 也要先转换成double型,再作运算。 ④ char型和short型参与运算时,必须先转换成int型。 ⑤ 在赋值运算中,赋值号两边量的数据类型不同时,赋值号右边量的类型将转换为左 边量的类型。如果右边的数据类型长度比左边长时,将丢失一部分数据,这样会降低精度。 强制类型转换 强制类型转换是通过类型转换运算来实现的。其一般形式为:(类型说明符)(表达式) 其功能是把表达式的运算结果强制转换成类型说明符所表示的类型。 注意:无论是强制转换或是自动转换,都只是为了本次运算的需要而对变量的数据长度 进行的临时性转换,而不改变数据说明时对该变量定义的类型。 基本运算符和表达式 (1) 运算符的种类、优先级和结合性 C语言中运算符和表达式