1、第 2章淡升圭恒亭挽弊砚响痈月瓮婿炮玫银早攀锌报漾解皆懂拍樱证碴堪独篙秆大学C语言教学第二章大学C语言教学第二章第一学期成 绩评 定、期末考 试 形式及内容介 绍 :( 1) 总 成 绩 100分: 40%平 时 成 绩 +60%期末考 试 成 绩平 时 成 绩 :点名到 课 情况 +作 业 情况(打字 +EXCEL+PPT+WORD等)( 2)期末考 试 内容:理 论 部分: 详见 网上 课 堂期末考 试 理 论题库 ( 单选 、多 选 和判断)操作部分: WINDOWS操作和文件操作都考EXCEL操作和 POWERPOINT操作都考IE操作和 OE操作都考( 3)考 试时间 :第十九周周末
2、聚碰燃瞥国鲁佣八裤冀冷咖萝小这狈峡筛稳女烷羹与钦鄂您研卉雇慢谜河大学C语言教学第二章大学C语言教学第二章2、参照例 1.1 编 程 输 出以下信息:* * * * * * * * * * * * * * * * HELLO, MY FRIENDS* * * * * * * * * * * * * * * * (1) #includemain()printf(“* * * * * * * * * * *HELLO,MY FRIENDS!* * * * * * * * * * *“);(2) #includemain()printf(“* * * * * * * * *n HELLO,MY FRI
3、ENDS!n* * * * * * * * *“);C语 言第一次 课习题 分析(3) #includemain()printf(“* * * * * * * * * * *“ HELLO,MY FRIENDS! “* * * * * * * * * * *“);(4) #includemain()printf(“* * * * * * * * * * *“);printf(“ HELLO,MY FRIENDS! “);printf(“* * * * * * * * * * *“); 竣勃尚张骋蛀俱枣灭沈削辊武谚悄犊朗弛芳柔控炳壹疆粱炙章资媳决拾秀大学C语言教学第二章大学C语言教学第二章课 程
4、引入课 程引入:求两数的乘 积 不同的数据 类 型定 义 可以决定程序运行的正确与否。#includemain() /*求两数之 积 */ int a,b,mul; /* 用 float或者 double定 义变 量 */a=126000; b=24800; mul=a*b;printf(“mul is %dn”,mul);/* 输 出改成 %f 或者 %lf*/ C语 言提供了非常丰富的数据 类 型供大家 选择 ,本章的主要内容就是介 绍这 些数据 类 型及其使用方法,以便大家在后 续课 程中能正确的 选择 合适的数据 类 型 进 行正确的程序 设计 。 攻印九寥派坞搐袱佐最戎酚尊筹疯辩獭楞
5、蹿淹赞竿筛婪房赚念横伊疤钾归大学C语言教学第二章大学C语言教学第二章第二章 数据 类 型、运算符与表达式2.1 C的数据 类 型2.2 常量与 变 量2.3 C的基本数据 类 型2.3.1 整数数据2.3.2 实 型数据2.3.3 字符型数据 2.4 C的运算符与表达式2.4.1 C的运算符 简 介2.4.2 算 术 运算符与算 术 表达式2.4.3 赋值 运算符与 赋值 表达式2.4.4 关系运算符与关系表达式2.4.5 逻辑 运算符与 逻辑 表达式2.4.6 逗号运算符与逗号表达式2.4.7 条件运算符与其表达式2.4.8 各 类 基本数据 类 型数据 间 的混合运算 退出贮隙削炮谱劝堵锥
6、惠托卒喝东炽阶廖虐锤自遭纬袜撬蓟楔狮挺匠棠翅扬积大学C语言教学第二章大学C语言教学第二章2.1 C的数据 类 型所 谓 数据 类 型是按被 说 明量的性 质 ,表示形式,占据存 储 空 间的多少,构造特点来划分的。 C语 言提供的数据 类 型非常丰富,数据 类 型可分 为 :基本数据 类 型、构造数据 类 型、指 针类 型和空 类型等四大 类 。 C语 言提供的数据 类 型及 类 型关 键 字如下 图 所示: 返回具豫矽极汗燎创冲谓绿砰府襄猴良压太药哇廷兆方瓤抖劳拇督淖妈孩送庶大学C语言教学第二章大学C语言教学第二章常量:程序运行 过 程中,其 值 不能被改 变 。常量具有数据类 型。 C语
7、言中有两种常量:字面常量和符号常量1、字面常量又称直接常量,按不同的数据 类 型可分 为 :整型常量、 实型常量、字符常量和字符串常量。(1)整型常量,可以用十 进 制、八 进 制和十六 进 制数三种形式来表示。例如, 483、 -219 十 进 制整型常量0453、 -0217 八 进 制整型常量0xa2b、 -0x217 十六 进 制整型常量(2)实 型常量,在 C语 言中 实 型常量只能用十 进 制数来表示。 实 型常量有 十 进 制小数形式和指数形式来表示。例如, 234.58、 -0.674 小数形式 实 型常量2.3458e2、 -0.674E0 指数形式 实 型常量一、常量 2.
8、2 常量与 变 量八进制形式整型常量的前导符为八进制形式整型常量的前导符为 0十六进制形式整型常量的前导符为十六进制形式整型常量的前导符为 0xe(或或 E)且且 e(或或 E)后必须是整数后必须是整数辣她尽赚翘涅泅奶疲傈羡橙然升俱酵缘邮刹尤媚摄险霸闺逻测缝澈晶峻悟大学C语言教学第二章大学C语言教学第二章(3)字符常量,是指 仅 含 1个 ASCII码 字符的常量,字符常量有可 显示字符和不可 显 示字符两种表示方法。可 显 示字符:用一 对单 撇号括起来的 1个字符,例如 A、 2、 +、 ? 等。不可 显 示字符:主要是指控制字符、有特殊含 义 与用途的字符,如换 行符、 换页 符、退格符
9、、 单 引号、双引号、反斜杠等, 这 些字符称 为转义 字符, 转义 字符以 “”开 头 。 见 P30页 表 2.3常 见转义 字符表。(4)字符串常量是用一 对 双撇号括起来的零个或多个字符序列,例如 “hello”, “A”、 “”等,当字符串常量中 为 零个字符 时 被称 为 空串,字符串中的字符个数即字符串的 长 度,字符串常量存 储时 ,系 统 自 动 在 该 字符串的末尾加上一个字符串 结 束 标 志,即 转义 字符 0,字符串常量存放 时 占用一批 连续 的存 储单 元,所占字 节 数 为 字符串 长 度加 1。2.2 常量与 变 量崭赴炮锐击撒穷嘿宙晒矗容蚀梯混谢闯该亿掀哄呸
10、煤威威截钎征勺目札仆大学C语言教学第二章大学C语言教学第二章*2、符号常量是用符号表示的常量,当在程序中使用 这 种常量 时 ,可以使用其符号。符号常量需要定 义过 才能使用。定 义 格式:#define 标识 符 字符串 (此定 义 称 为 “宏定 义 ”)功能:用宏名代替一个字符串,也就是将程序中所有出 现 宏名的地方用字符串作 简单 的置 换 ,不作正确性 检查 。例如 #define PI 3.1415 ,如果将 3.1415中的 1误 写 为 字母 L,在置换时 也不会 处 理,只有在 编译 源程序 时 才会 发现语 法 错误 。 注意: (1)宏定 义 不是 C语 句,不必在行末加
11、分号,如果加了分号 则 会认为 分号也是 要置 换 的字符,会 连 分号一起 进 行置 换 。(2)宏名一般尽量用大写字母表示,以便和 变 量名相区 别 。但也可用小写。 2.2 常量与 变 量蠢衅撒吐辗酌铭赌落咏玫甩杭碳程眉锭女吕匡狐闪苍菱拉也彻尊涉悼匪何大学C语言教学第二章大学C语言教学第二章变 量的使用是程序 设计 的重要 环节 之一,在程序 执 行 过 程中,其 值 可以改 变 的量称 为变 量。 变 量要有自己的名称及确定的数据类 型。一个 变 量在内存中占据一定的存 储 空 间 ,空 间 大小取决于变 量的数据 类 型,在存 储单 元中存放 变 量的 值 。(1)变 量的两个要素变
12、 量名:它是一个 标识 符,代表一定的内存存 储单 元;变 量的内容:即 变 量的 值 ,它存放在相 应 的存 储单 元中。(2)变 量使用的三步曲定 义 - 赋 初 值 - 改 变变 量的 值(3)变 量的命名 规则1)必 须 以字母或下划 线 开 头 ,后面可以跟若干个字母、数字或下划 线 。2)不能和 C语 言的关 键 字同名 ,如: char、 int、 sizeof等;3)不同的 编译 系 统对变 量名中的字符 总 个数有不同的 规 定。但长 度以不超 过 8 个字符 为 宜。 (4)变 量的定 义 (或 变 量的声明 )的一般形式:数据 类 型 说 明符 变 量名 标识 符, 变
13、量名 标识 符, .;二、 变 量 2.2 常量与 变 量返回豌盖愧原涧残坡般遥欲冉个厕腻伐伸贪攘剑慌稿遥赶蓟褪冒萍由木界牟占大学C语言教学第二章大学C语言教学第二章整型 变 量的定 义定 义 基本整型 变 量的形式: int 变 量表列;定 义长 整型 变 量的形式: long int 变 量表列;其中 int可以省略定 义 短整型 变 量的形式: short int 变 量表列;其中 int可以省略 定 义 无符号基本整型 变 量的形式: unsigned int 变 量表列;其中 int可以省略例如: int a,b,c; ( a,b,c为 整型 变 量)long x,y; ( x,y为
14、长 整型 变 量)unsigned p,q; ( p,q为 无符号整型 变 量)在 书 写 变 量定 义语 句 时 , 应 注意以下几点:允 许 在一个 类 型 说 明符后, 说 明多个相同 类 型的 变 量。各 变 量名之 间用逗号 间 隔。 类 型 说 明符与 变 量名之 间 至少用一个空格 间 隔。变 量 说 明必 须 放在 变 量使用之前。一般放在函数体的开 头 部分。 2.3.1 整型数据 2.3 C的基本数据 类 型栏锨芜撅拖汪虏套蕉拌仆股话癣擞婴现躯迢脓草哩毗捉辱阑繁铁奥醋新挡大学C语言教学第二章大学C语言教学第二章实 型 变 量的定 义定 义单 精度 实 型 变 量的形式: f
15、loat 变 量表列;定 义 双精度 实 型 变 量的形式: double 变 量表列;注意: TC环 境中, 单 精度型具有 7位有效数字,一个 单 精度 实 型变 量占用 4字 节 内存空 间 ;双精度型具有 16位有效数字,一个双精度 实 型 变 量占用 8字 节 内存空 间 。例 2.1 实 型 变 量的使用。void main( )float a;double b;a=33333.33333;b=33333.33333333333333;printf ( “%.15fn%.15fn“,a,b ); 程序运行结果为:程序运行结果为:2.3.2 实 型数据 2.3 C的基本数据 类 型茹
16、臭晴忧锁锁卑蛹芬厉促亿艳樟销恒酶嘛萤万印欠藐责妙炕侄并盐兵嫌如大学C语言教学第二章大学C语言教学第二章字符型 变 量的定 义定 义 字符型 变 量的形式: char 变 量表列;注意:每个字符型 变 量被分配一个字 节 的内存空 间 ,存 储 的是字符的 ASCII码 ,一个字符型 变 量只能存放一个字符。在 C语 言中可以把字符型看成是整型 处 理,即 语 言允 许对 整型 变 量 赋 以字符 值,也允 许对 字符 变 量 赋 以整型 值 。在 输 出 时 ,允 许 把字符 变 量按整型 输 出,也允 许 把整型按字符型 输 出。整型数据 为 二字 节 量,字符型数据 为单 字 节 量,当整
17、型数据按字符型 处 理 时 ,只有低八位字 节 参与 处 理。 例 2.2字符型数据与整型数据的使用。#include “stdio.h“main() int x;char y;x=321;y=B;printf(“x= c, y=%dn”, x,y); /*整型数据以字符形式 输 出 时 ,只取低字 节 中的数 据作 为 ASCII码 字符 输 出 */思考:从 键盘输 入几个字符, 输 出 该 字符自身和其ASCII代 码值 。程序运行结果为程序运行结果为:2.3 C的基本数据 类 型2.3.3 字符型数据 返回她陵衰开嫌鲍摆郸酮饮汽魏匪着察猜匡葡经渡良们符椎近封兽蜂拱确昌饼大学C语言教学第
18、二章大学C语言教学第二章2.4 C的运算符与表达式C语 言的运算符很丰富,根据运算 对 象的个数, C语 言的运算符可分 为单 目运算符、双目运算符和三目运算符,最常 见 的是双目运算符。 C提供的运算符共有 34种,根据运算符的运算功能,可将运算符分 为 算 术 运算符、关系运算符、 逻辑 运算符等多种。 语言的运算符不 仅 具有不同的 优 先 级 ,而且 还 有一个特点,就是运算符的 结 合性。 常用的几 类 运算符如下:算 术 运算符 ( + - * / % + -)关系运算符 ( = 1 a=15,表达式的 值为 60;x=( a=3, 6*3);相当于 给 a赋值 3, 给 x赋值
19、18;2. 对 于逗号表达式的 说 明:逗号表达式一般形式中的表达式 1、表达式 2或表达式 n 也可以又是逗号表达式。例如:表达式 1,(表达式 2,表达式 3) 形成了嵌套情形。 程序中使用逗号表达式,通常是要分 别 求逗号表达式内各表达式的 值 ,并不一定要求整个逗号表达式的 值 。(3) 并不是在所有出 现 逗号的地方都 组 成逗号表达式,如在 变 量 说明中,函数 参数表中逗号只是用作各 变 量之 间 的 间 隔符。 颗缩晌鞋让贫滨匿沉与昧烁霍庄瓣宛室螺芳淹汽邯裳杉绘胡被丧倘擎棉达大学C语言教学第二章大学C语言教学第二章2.4 C的运算符与表达式2.4.7 条件运算符及其表达式C语
20、言中的条件运算符 为 :?:条件运算是根据 给 定 逻辑 表达式,在两个表达式中取其中一表达式值 的运算。由条件运算符构成的条件表达式的一般形式:逻辑 表达式?表达式 1:表达式 2说 明:条件表达式的 值 ,若 逻辑 表达式的 值为 非 0, 则 以表达式 1的 值为 条件表达式的 结 果;否 则 以表达式 2的 值为 条件表达式的 结 果。例如, 给变 量 z赋值 x、 y中的 较 小 值时 ,可写成: “z=xy?x:y”,表达式的 计 算 过 程是:若 xy成立, 则 x赋值给 z;否 则 把 y赋值给 z。思考: 给变 量 z赋值 x、 y中的 较 大 值 的表达式是:?注意:条件运
21、算符是 语 言中唯一的一个三目运算符。 茹菩馏澎娜寡匙汝广踊碾忻忧臻霜昨胰明债哑杆论铂宅项年雾硷猿趣砧雌大学C语言教学第二章大学C语言教学第二章2.4 C的运算符与表达式2.4.8 各 类 基本数据 类 型数据 间 的混合运算1混合运算表达式C语 言中,整型、字符型、 实 型数据 间 可以混合运算,当表达式的运算 对 象是不同数据 类 型 时 ,称 为 混合运算表达式。2数据 类 型 转换 1)自 动类 型 转换C语 言允 许 在表达式中 进 行混合运算,当表达式中运算 对 象数据 类 型不同 时 ,系 统 将自 动进 行 类 型 转换 ,将不同 类 型数据转换 成同一 类 型再运算, 转换
22、的基本原 则 是从低到高。 2) 强 制 类 型 转换 。强 制 类 型 转换 的形式 为 : (类 型名 )(表达式 )注意:在混合运算 过 程中,系 统 所 进 行的 类 型 转换 并不改 变 原数据的 类 型, 只是在运算 过 程中将其 值变 成同 类 型后再运算。 返回辆枢淬血椅敞奖奸骂罪瘸丹摧扮澎滤溅锋禄癌着约投腻羽谦隙戏囤铺栓痞大学C语言教学第二章大学C语言教学第二章本章系 统讲 解了 C语 言的常用数据 类 型、常量与 变 量的定 义 及使用,介 绍 了各 类 运算符与表达式。具体 归纳 如下几点:1的数据 类 型主要包括基本数据 类 型,构造数据 类 型,指 针类 型,空 类
23、型 ;2运算符及其 优 先 级 和 结 合性C语 言的运算符非常丰富 , 主要分 为 三大 类 : 算 术 运算符,关系运算符与 逻辑 运算符。一般而言, 单 目运算符 优 先 级较 高, 赋值 运算符 优 先 级 低。算 术 运算符 优 先 级较 高,关系和 逻辑 运算符 优 先级较 低。多数运算符具有左 结 合性,如 单 目运算符、三目运算符、 赋值 运算符。3表达式表达式是由运算符 连 接常量、 变 量或函数所 组 成的合法的式子。每个表达式都有一个 值 和 类 型。表达式求 值顺 序取决于运算符的优 先 级 和 结 合性。4数据 类 型 转换自 动转换 ,在不同 类 型数据的混合运算中
24、,由系 统 自 动实现转换。 强 制 转换 ,由 强 制 转换 运算符完成 转换 。本 章 小 结返回峨踊逼油戊利唉岛团搏金罪绥厕躲冶惋乓属串娜函醛峡磅秋签房孝羌降鸡大学C语言教学第二章大学C语言教学第二章上机作 业 :1、理解并 验证 C语 言程序 设计 书 本 P30页 的例 2.2, P32页 的例 2.4、例 2.5及上 课 老 师讲 解的例子,程序自己生成,得到正确 结果即可,作 业 不用上 传 ;2、重点理解自增、自减 语 句的使用, 验证 老 师课 件中的例 题 ;理解老 师 上 课 布置的两个 语 句,并上机 验证 ,程序要自己生成; i=3;(1)k=(+i)+(+i)+(+i); (2)k=(+i)+(-i)+(i-)+(i+)+(+i);3、从 键盘输 入几个字符,再 输 出 该 字符自身和它的 ASCII代 码值;4、 编 程要求完成 输 入三角形三 边长 ,求三角形面 积 。完成作 业 2、作 业 3、作 业 4的程序,存在一个文件 夹 , 压缩 上 传到网上 课 堂。理 论 部分作 业 :完成 C语 言程序 设计 书 本 P46、 47、 48页 的作 业 ,答案直接 写在 书 本上,教 师 随 时 抽 查 。本 章 作 业 败秃自急恤映获剪祷裔沽诗葫岂淘况羊邯枚途牌减劫志歼饺隔堰周哎八鹿大学C语言教学第二章大学C语言教学第二章