C语言复习资料
第一章 C语言程序设计概述
c程序基本结构特点
o 函数与主函数
1. 程序由一个或多个函数组成,函数由函数头和函数体构
成。程序的基本组成模块是函数。 2. 必须有且只能有一个主函数main()
3. 程序执行从main开始,在main中结束,其它函数通过嵌
套调用得以执行。
4. main函数在程序中的位置任意,可以在程序的开头、中间
或者尾部。
o 程序语句
1. C程序由语句组成,用“;”作为语句终止符
2. /* */或 / /后的内容 作为注释,不能
嵌套,不产生编译代码
o 编译预处理不是C语言的一部分
? C程序的运行步骤
?
运行一个C程序,从输入源程序开始,要经过编辑源程序文件(?C)、编译生成目标文件(?obj)、连接生成可执行文件(?exe)和执行四个步骤
第三章 数据类型、运算符和表达式
o 标识符命名原则:
1.
1. 合法的要求是由字母,数字,下划线组成,并且第一个必须为字母或则是下划线。关键字不可以作为用户标识符号。
2. main define scanf printf 及其他库函数的函数名都不是关键字可以用作标识符。
3. If与if不同,If是可以做为用户标识符,因为C区分大小写。
o 基本数据类型:
1. 基本数据类型有哪些?所占空间大小及说明符。
2. 整型、实型、字符型常量的合法表示形式,字符串的表示
形式。
?
a)实型数据的合法形式:小数形式和指数形式-----尤其要注意指数形式的格式e前必有数,e后必为整数。2.333e-1 是合法的,1e.111是非法的。
b) 字符数据的合法形式:以单引号括起来的一个字符,注意转义字符P48表3-3。
如‘\\x6d’是合法的字符,ASCII码为十六进制的6d,‘\\141’也合法,ASCII码为八进制141,‘\\108’不合法。
c) 字符常量和字符串的区别:'a' 是字符占一个字节, \是字符串占两个字节(含有一个结束符号)。
o 常量和变量
1. 符号常量的定义格式:eg
#define PI 3.14159 (注意宏定义后无分号结尾) 2. 变量的定义格式:
3. 变量赋初值的方式。 int a=b=c=3;不合法 o 数据混合计算时数据类型的转换:P54图3-10。
?
?
1. 强制类型转换:一定是(int)a 不是 int(a),注意类型上一定有括号的。
2. 注意(int)(a+b)和(int)a+b 的区别。 前是把a+b转型,后是把a转型再加b。
? 运算符
1. 运算符的优先级别和结合方向:
1. 单目运算>双目运算
2. 算术> 关系运算>逻辑运算>条件运算>赋值运算>逗号运算 2. 算术运算符:
1. %要求左右两边都是整型数,运算结果为余数。 2. /运算若左右两边都是整型数,结果为整数。
3. 自增自减运算符,前置先自增减,再运算;后置先运算,再自增减。自增自减运算符只能作用于变量,不能作用于常量和表达式。 如:#define A 3
A++;是错误写法。 3. 关系运算符:
a)注意赋值=与关系= =的区别。
b) c语言中没有逻辑类型,逻辑“真”用非0表示,逻辑“假”用0表示,
c) x在[a,b]间的关系表达式为x>=a && x<=b,不能写为a>=x>=b。但该表达式语法成立,有运算结果。如3>=1>=5运算时从左向右依次运算,即3>=1为真,值为1,此时,表达式为1>=5,运算结果为假,值为0。所以整个1>=3>=5的值为0.
4. 逻辑运算符:
a) !为单目运算符优先级别比较高 。 b) &&和||运算时注意短路原则。
5. 赋值运算符:自右向左的结合方向
a)复合赋值运算符的使用。如a=12,则a+=a-=a*=a;运算后a的值
6. 条件运算符:(表达式1?表达式2:表达式3) a)结合方向从右向左。
7. 逗号运算符:优先级别最低;也叫顺序执行运算符,表达式的数值逗号最右边的那个表达式的数值。(2,3,4)的表达式的数值就是4
?
表达式
1. 能将数学表达式写成c表达式
2. 计算表达式的值,注意优先级别和结合方向。
第四章 顺序程序设计
?
输入输出函数
1.
1. printf函数的格式考查: