logo资料库

天津专升本软件工程专业课复习资料(文理全有).pdf

第1页 / 共127页
第2页 / 共127页
第3页 / 共127页
第4页 / 共127页
第5页 / 共127页
第6页 / 共127页
第7页 / 共127页
第8页 / 共127页
资料共127页,剩余部分请下载后查看
软件工程专业课复习资料 第一章 C 语言设计的初步知识 第一节 C 语言基本常识及标识符 一、 基本概念 1. 一个 C 程序总是从主函数开始执行。 2. 函数体用“{”开始,用“}”结束。语句的数量不限。定义语句用分号“;” 结束。 3. C 程序中的每一条执行语句都必须用“;”结束,分号是 C 语句的一部分, 不是语句之间的分隔符。 4. C 语言源程序经过 C 语言编译程序编译之后生成一个后缀为.OBJ 目标文 件。最后还要由称为“连接程序”的软件,把此.OBJ 文件与 C 语言提供的 各种库函数连接起来生成一个后缀为.EXE 的可执行文件。 源文件 编译 目标文件 连接 可执行文件 .c 文件 .obj 文件 .exe 文件 二、 标识符 1、 标识符组成 1) 标识符可用作变量名、符号名、函数名、数组名、文件名。 2) 合法的标识符由字母、数字和下划线组成,并且第一个字符必须为字母或 下划线。 2、 标识符分类 1) 关键字:C 语言规定了一批标识符,它们在程序中都代表着固定的含义, 不能另作它用 ......(如 main、int),共 32 个(注意:全部是小写),见下表: auto break case char const continu defaul e t do doubl e else enum extern float for goto if int long main registe r 1 return short signed sizeo f
选 择 决 定 未 来, 精 通 造 就 人 才 stati struc switc c t h typedef union unsigne d void while 2) 预定义标识符:这些标识符也都有特定的含义,如 C 语言提供的库函数 (如 printf、scanf)和预编译处理命令(如 define)等。C 语言语法允许把... .........,.但这将使这些标识符失去系统规定的原意 这类标识符另作它用 ..................,因此, 建议用户不将此类标识符另作它用。 3) 用户标识符:用户标识符一般用来给变量、函数、数组或文件命名。 第二节 常量、变量及数据类型 一、 常量 在程序运行过程中,其值不能被改变的量,称为常量。在 C 语言中,常量分为 整型常量,实型常量,字符常量和字符串常量。 1、 整形常量 在 C 语言中,整型常量可以用十进制、八进制和十六进制形式来表示。 1) 十进制基本常量用一串连续的数字来表示。 2) 八进制数用数字 0 开头(注意:不是字母 o)。因此,在 C 程序中不能在一个 十进制整数前面加前导零。 3) 十六进制数用数字 0 和字母 x(或大写字母 X)开头。 2、 实型常量 在 C 语言中可以用两种形式表示一个实型常量。 1) 小数形式 即数学中常用的实数形式,由数字和小数点组成(注意:必须要有小数点), 如 0.123、.123、123.等都是合法的实型常量。 2) 指数形式 在数学中,一个数可以用幂的形式来表示,如 2.3026 可以表示为 0.23026 ×101、2.3026×100、23.026×10-1 等形式。在 C 语言中,则以“e”或“E”后 跟一个整数来表示以 10 为底的幂数。2.3026 可以表示为 0.23026E1、 2.3026e0、23.026e-1。 3、 字符常量 1) 基本表示方式 C 语言中,一个字符常量代表 ASCII 字符集中的一个字符,在程序中用单 2
引号把一个字符括起来作为字符常量,如‘a’,‘4’等。 软件工程专业课复习资料 字符常量在内存中占一个字节,存放的是字符的 ASCII 代码值。C 语言规 定,所有字符常量都作为整型量来处理,在计算机内部,字符对应的整数值就 是 ASCII 码。 2) 转义字符常量 转义字符总是以一个反斜线开头后跟一个特定的字符,用来代表某一个 特定的 ASCII 字符,这些字符常量也必须括在一对单引号内。下表列出了 C 语言中的转义字符。 表 1-2-1 字 符 形 式 \n 回车换行 功 能 字 符 形 式 \” 双引号 功 能 \t 横向跳若干格(代表“TAB”键) \v 竖向跳格 \b 退格符(代表“backspace”键) \\ 反斜杠字符“\” \’ 单引号(撇号)字符 \ddd \xhh 一至三位八进制数代表的一 个 ASCII 字符 一至二位十六进制数代表的 一个 ASCII 字符 \0 空值 4、 字符串常量 字符串常量是由双引号括起来的一串字符。在 C 语言中,系统在每个字符 串的最后自动加入一个字符--‘\0’作为字符串的结束标志。 5、 符号常量 可以用一个符号名来代表一个常量,但是这个符号名必须在程序中进行 特别的“指定”。 例 1.2.1 计算圆面积。 #include“stdio.h” #define PI 3.14159 /* 定义符号名 PI 为 3.14159 */ main() { float r,s; r=5.0;s=PI*r*r;printf(“s=%f\n”,s);} 程序运行结果: s=78.539749 程序中用#define 命令行(注意:不是语句,后面没有分号)定义 PI 代表 一串字符 3.14159,在对程序进行编译时,凡本程序中出现 PI 的地方,编译程 序均用 3.14159 这一串字符来替换,本程序中,可以把 PI 视为 3.14159 的替 身。这种符号名通常采用大写字母。用 define 进行定义时,必须用#号作为 3
选 择 决 定 未 来, 精 通 造 就 人 才 一行的开头,在#define 命令行的最后不得加分号结束。把#define 命令行中 定义的符号名称为符号常量。 二、 变量 象常量一样,变量也有类型的区分,如整型变量、实型变量、字符型变量等。 C 语言在定义变量的同时说明该变量的类型,系统在编译时就能根据定义及其类 型为它分配相应数量的存储空间。 1、 整型变量 1) 整型数据的分类 整型常量和整型变量可以分为基本型(int)、短整型(short int)、长整型 (long int)和无符号型(unsigned)四种,其所占用的字节数和数值范围如表 1-2-2 所示。表中方括号内的单词可写也可不写,各单词的先后次序无关紧要。单词 signed 用来说明“有符号”,不写 signed 也隐含为有符号。 表 1-2-2 类 型 名 称 占用字节数 数 值 范 围 [signed]int [signed] short [int] [signed] long [int] unsigned [int] unsigned short [int] unsigned long [int] 2 2 4 2 2 4 -32768~ 32767 -32768~ 32767 -2147483648~ 2147483647 0~ 65535 0~ 65535 0~ 4294967295 若要表示一个长整型常量,则应该在一个整型常量后面加一个字母后缀 l 或 L,这些常量在内存中占四个字节。 2) 整型变量的定义 整型变量在使用前必须定义,其定义格式如下: int a; /*定义一个基本型整型变量 a*/ long int b; /*定义一个基本型整型变量 b*/ 2、 实型变量 C 语言中实型变量分为单精度型和双精度型两类,分别用类型名 float 和 double 进行定义。计算机系统为 float 类型的变量分配 4 个字节的存储单元,为 double 类型的变量分配 8 个字节的存储单元。 4
3、 字符变量 软件工程专业课复习资料 C 语言中,字符变量用关键字 char 进行定义;在定义的同时可以赋初值。 字符变量在内存中占一个字节,字符变量可以存放 ASCII 字符集中的任何字 符。所以字符变量可以作为整型变量来处理,可以参与对整型变量所允许的任何 运算。 例如:char c1,c2,c3;int k=5;c1=‘1’;c1++;c2=‘A’;c3=(c2+32+k)%25; 第三节 运算符和表达式 一、 基本的算术运算符 1. 算术运算符组成: -、 *、 +、 加、 减、 乘、 除、 求余运算符 /、 % 【说明】 ! 这些运算符需要两个运算对象,称为双目运算符。 ! 除求余运算符外,运算对象可以是整型,也可以是实型。 ! 求余运算符的运算对象只能是整型。在“%”运算符左侧的运算数为被除数, 右侧的运算数为除数,运算结果是两数相除后所得的余数。当运算量为负数 时,符号与被除数相同。例如 17%-3 的结果为 2,-19%4 的结果为-3。 ! “+”和“-”也可用作单目运算符,运算符必须出现在运算量的左边。 2. 运算符的优先级、结合性和算术表达式 1) 算术运算符的优先级 单目 双目 ( )、 +、 -、 *、 /、 %、 +、 - 同级 同级 同级 高 -----------------------------------> 低 优 先 级 2) 算术运算符和圆括号的结合性 以上所列的运算符中,只有单目运算符“-”和“+”的结合性是从右到左,其 余运算符的结合性都是从左到右。 3) 算术表达式 5
选 择 决 定 未 来, 精 通 造 就 人 才 用算术运算符和一对圆括号将运算量连接起来的、符合 C 语法的表达式称为 算术表达式。运算对象可以是常量、变量和函数等。 " 二、 赋值 运算符和赋值表达式 1. 赋值运算符和赋值表达式 在 C 语言中,“=”号称为赋值运算符,由赋值运算符组成的表达式称为赋值表 达式,形式为: 变量名=表达式。 2. 复合的赋值表达式 在赋值运算符之前加上其它运算符可以构成复合赋值运算符,其中与算术运 算有关的复合运算符是:+=、-=、*=、/=、%=等。表达式 n+=1 的运算规则等价 于 n=n+1,表达式 n*=m+3 的运算规则等价于 n=n*(m+3)。 三、 自加(++)、自减(--)运算符 自加运算符“++”和自减运算符“--”的运算结果是使运算对象的值增 l 或 减 1。如 i++,相当于 i=i+1;i--,相当于 i=i-1。因此,自加或自减运算本身也是 一种赋值运算。 【注意】 " ++、--运算符是单目运算符,运算对象可以是整型变量也可以是实型变量, 不能是常量和表达式,因此,如++3、(i+j)--等都是不合法的。 " ++(或--)在变量后面,先取变量原值作为表达式的值,再使变量的值增 1 (或减 1);++(或--)在变量前面,先使变量的值增 1(或减 1),再取变 量新值作为表达式的值,具体情况见下表(设有如下定义:int a=2;)。 表达式 表达式值 变量 a 的值 a++ ++a a-- --a 2 3 2 1 3 3 1 1 " ++和--运算符的结合方向是“自右至左”。 例如有一表达式-i++,负号运算符和自加运算符优先级相同;结合方向 “自右至左”,即相当于对表达式-(i++)进行运算。如果需要输出表达式-i++ 的值,则应先取出 i 的值使用,输出-i++的值-3,然后使 i 增值为 4。 6
四、 逗号运算符和逗号表达式 软件工程专业课复习资料 “,”是 C 语言提供的一种特殊运算符,用逗号将表达式连接起来的式子称为 逗号表达式。逗号表达式的一般形式为:表达式 1,表达式 2,…,表达式 n 五、 关系运算 1. C 语言中的逻辑值 在 C 语言中,逻辑值只有两个, “真”和“假”,其中用非零值来表示“真”, 用零表示“假”。因此,对于任意一个表达式,如果值为 0 时,就代表一个“假”值; 只要值是非零,无论是正数还是负数,都代表一个“真”值。 2. 关系运算符 C 语言提供了 6 种关系运算符: <(小于) <= (小于或等于) > (大于) >= (大于或等于) !=(不等于) == (等于) ---------------------------------------------------# 相 同 3. 关系表达式及关系表达式的值 高 优 先 级 低 关系运算的结果得一个整数值:0 或 1。用零代表“假”,用非零代表“真”。 例如,若 a=10,b=16,表达式 a>=b 为“假”,值为 0;若 a=10,b=6 时,表达式 a>=b 为“真”,值为 1。 六、 逻辑运算 1. 逻辑运算符 C 语言提供了三种逻辑运算符: ① && 逻辑“与” ② || 逻辑“或” ③ ! 逻辑“非” 【说明】 ! &&和||是双目运算符,!是单目运算符,应该出现在运算对象的左边。逻辑运 算符具有自左向右的结合性. ! 逻辑运算符的优先级次序是:!(逻辑非)级别最高,&&(逻辑与)次之,||(逻辑 或)最低。 ! 逻辑运算的对象可以是 C 语言中任意合法的表达式。 7
2. 逻辑表达式和逻辑表达式的值 选 择 决 定 未 来, 精 通 造 就 人 才 由逻辑运算符和运算对象所组成的表达式称为逻辑表达式。逻辑表达式的运 算结果或者为 1(“真”),或者为 0(“假”)。由逻辑运算符组成的逻辑表达式在 运算时,&&(与)运算相当于“乘”运算,||(或)运算相当于“加”运算。以 a&&b 为例,其运算规律如下表: a 取值 b 取值 &&运算 ||运算 0 0 1 1 0 1 0 1 0 0 0 1 0 1 1 1 “非”运算规律:对“假”取非,结果为“真” 对“真”取非,结果为“假” 【注意】 " 数学关系式 0
分享到:
收藏