第2章 数据类型与表达式 学习目的与要求: 掌握C 语言的基本数据类型及使用方法 掌握C程序中常用的运算符和表达式 了解数据类型的转换.

Slides:



Advertisements
Similar presentations
人生格言: 天道酬勤 学院:自动化与电气工程学院 班级: 自师1201 姓名:刘 威.
Advertisements

C语言程序设计 主讲教师 :张群燕 电话:
第一章 C语言概述 计算机公共教学部.
第一单元 算法与流程图.
岳阳市教学竞赛课件 勾股定理 授课者 赵真金.
相持时双方的拉力一定大小相等,方向相反;当甲方齐心协力把绳子缓缓朝他们方向拉过去的时候,甲方的拉力一定比乙方大吗?
勾股定理 说课人:钱丹.
C++程序设计 王希 图书馆三楼办公室.
第4章 选择结构程序设计 在现实生活中,需要进行判断和选择的情况是很多的 如果你在家,我去拜访你 如果考试不及格,要补考
C语言程序设计 第十二章 位运算.
高级语言程序设计 主讲人:陈玉华.
第3章 顺序结构程序设计 本章要点: 格式化输出函数──printf() 格式输入函数——scanf() 字符输出函数——putchar()
C++程序设计 第二讲 清华大学软件学院.
C程序设计.
QQ: 李祥 QQ: 欢迎多种方式的学习交流,祝大家学有所成.
程序设计专题一 结构化程序设计与递归函数 主讲教师: 刘新国.
QQ: 李祥 QQ: 欢迎多种方式的学习交流,祝大家学有所成.
第二章 基本元素、类型和概念 七、输出函数printf 八、输入格式转换函数scanf.
人教版数学四年级(下) 乘法分配律 单击页面即可演示.
第三节 整数类型.
切換Dev c++顯示語言 工具->環境選項(V)->介面->language (Chinese TW)
第3章 顺序结构程序设计 为了让计算机处理各种数据,首先就应该把源数据输入到计算机中;计算机处理结束后,再将目标数据信息以人能够识别的方式输出。C语言中的输入输出操作,是由C语言编译系统提供的库函数来实现。 3.1 格式化输出——printf()函数 3.2 格式化输入——scanf()函数.
第三章 数据类型、运算符与表达式.
2.1 C语言的数据类型 2.2 常量与变量 2.3 变量赋初值 2.4 各类数值型数据间的混合运算 2.5 C语言的运算符和表达式
第4章 顺序程序设计.
4.8 平行线 海南华侨中学 王应寿.
第九章 预处理命令.
第1章 概述 本章要点: C语言程序结构和特点 C语言程序的基本符号与关键字 C语言程序的编辑及运行 学习方法建议:
C++ 程式設計 基礎篇 張啟中 Chang Chi-Chung.
第二章 基本数据类型及运算 C数据类型概述 基本数据类型 运算符和表达式 混合运算与类型转换 数据的输入输出 顺序程序设计举例.
C语言概述 第一章.
第1讲 C语言基础 要求: (1) C程序的组成 (2) C语言的标识符是如何定义的。 (3) C语言有哪些基本数据类型?各种基本数
第四节 浮点数类型.
Java變數 2014/6/24.
第2章 数据类型及表达式 本章导读 本章主要知识点 《 C语言程序设计》 (Visual C++ 6.0环境)
第 二 章 数据类型、运算符与表达式.
第一章 程序设计和C语言 主讲人:高晓娟 计算机学院.
C语言程序设计 教案 崔武子制作
7.1 C程序的结构 7.2 作用域和作用域规则 7.3 存储属性和生存期 7.4 变量的初始化
C程序设计.
第一部分 数字电路 第4章 组合逻辑电路 主讲教师:喻红.
第一章 C语言概述 教师:周芸.
C语言程序设计 李祥 QQ:
C++语言程序设计教程 第2章 数据类型与表达式 第2章 数据类型与表达式 制作人:杨进才 沈显君.
<编程达人入门课程> 本节内容 为什么要使用变量? 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ:
C++程式設計入門 變數與運算子 作者:黃建庭.
第2章 数据类型、运算符与表达式 2.1 程序设计概述
第3章 数据类型、运算符与表达式.
项目1 C程序设计起步 学习目标: 通过该项目你可以知道: C语言的用途。 C语言的基本符号和关键字。 C语言程序的结构及特点。
第2章 数据类型、运算符与表达式 本章要点: 基本数据类型 常量和变量 算术运算符和算术表达式 关系运算符和关系表达式
第2章 基本数据及其运算 本章学习的目标: 1、掌握基本数据的各种表示,基本数据常数的书写方法;
THE C PROGRAMMING LANGUAGE
第二章 类型、对象、运算符和表达式.
第二章 基本数据类型 ——数据的表示.
9.1.2不等式的性质 周村实验中学 许伟伟.
第4章 顺序结构程序设计 为了让计算机处理各种数据,首先就应该把源数据输入到计算机中;计算机处理结束后,再将目标数据信息以人能够识别的方式输出。C语言中的输入输出操作,是由C语言编译系统提供的库函数来实现。 4.1 格式化输出——printf()函数 4.2 格式化输入——scanf()函数.
第四章 函数 丘志杰 电子科技大学 计算机学院 软件学院.
第3章 最简单的C程序设计 3.1 顺序程序设计举例 3.2 数据的表现形式及其运算 3.3 C语句 3.4 数据的输入输出.
本节内容 指针类型.
C++语言程序设计 C++语言程序设计 第二章 基本数据类型与表达式 第十一组 C++语言程序设计.
第五章 逻辑运算和判断选取控制 §5.1 关系运算符和关系表达式
職業學校群科課程綱要規劃原理及修訂重點 報告人:鄭慶民
Introduction to the C Programming Language
第十二章 位运算.
美丽的旋转.
第二章 数据类型、运算符和表达式 §2.1 数据与数据类型 §2.2 常量、变量和标准函数 §2.3 基本运算符及其表达式 目 录 上一章
C/C++基礎程式設計班 C語言入門、變數、基本處理與輸入輸出 講師:林業峻 CSIE, NTU 3/7, 2015.
基本資料型態 變數與常數 運算子 基本的資料處理 授課:ANT 日期:2014/03/03.
本节内容 指针类型 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
C++语言程序设计 C++语言程序设计 第二章 基本数据类型与表达式 第十一组 C++语言程序设计.
Presentation transcript:

第2章 数据类型与表达式 学习目的与要求: 掌握C 语言的基本数据类型及使用方法 掌握C程序中常用的运算符和表达式 了解数据类型的转换

基本内容 常量 变量 运算符和表达式 数据类型转换 本章小结

常量 C语言把程序能处理的基本数据对象分成一些集合。属于同一集合的数据对象具有相同的性质,不同性质的数据分别用不同的数据类型来区分。 在高级语言中,数据有两种表现形式:常量和变量。 常量是指在程序运行过程中其值不能发生变化的量。 常量分为数值常量(包括整型常量和实型常量)、字符型常量(包括字符常量和字符串常量)和符号常量。

整型常量 C语言中,整型常量可以用十进制、八进制和十六进制三种记数形式表示。 十进制整数:1~9中的一个数开头,后面跟上的若干位0~9的数字表示的数。例如:12,-102,+1234 八进制整数:以数字0开头,后面跟上若干位0~7的数字表示的数。例如:012,+027,-0105 十六进制整数:以0x或0X开头,后面跟上若干位0~9的数字,或字母a~f(或A~F)表示的数。例如:0x12,0xa2,+0Xaf,-0x12bc3

整型常量说明 注意不同数制数的表示,例如:12、012和0x12表示不同的值。八进制数012等于十进制数10,而十六进制数0x12等于十进制数18。 C语言将整型数据按数值范围大小分成三种:基本整型(int)、短整型(short)和长整型(long)。在内存中占不同的字节数。 无论采用何种记数制,若有前缀“+”或“-”,表示有符号数,否则称为无符号数。无符号数允许加后缀“U”或“u”。带有后缀“L”或“l”的数表示长整型数。

实型常量 实型数据又称为浮点数或实数。在C语言中,有两种表示形式:十进制小数形式和指数形式。 十进制形式的实数由十进制整数部分、小数点和十进制小数部分组成。小数点是必不可少的,整数部分和小数部分可以只取其一,但必须至少保留一项。例如:12.,.5。 指数形式又称科学记数法,一个浮点型常量被表示成某一个称作尾数的基础值乘以10的某一整数次幂。尾数可以是一个十进制整数或小数,后面紧跟着字母e或E和一个称作指数的一个整数。例如:12.34e4,-.25e-3,234E+5。

实型常量说明 浮点型数据按其数值范围大小和精度不同分成三种:单精度型(float)、双精度型(double)和长双精度型(long double)。 可以使用后缀字母f(或F)表示一个单精度实型常量,否则认为是双精度实型常量。如果浮点数后缀字母l(或L),表示此数是一个长双精度型实数。 指数形式又称科学记数法,一个浮点型常量被表示成某一个称作尾数的基础值乘以10的某一整数次幂。尾数可以是一个十进制整数或小数,后面紧跟着字母e或E和一个称作指数的一个整数。例如:12.34e4,-.25e-3,234E+5。

字符常量 说明 在C语言中,由单引号括起来的单字符,称作字符常量。例如:'a','#','3','/'。 单引号本身只作定界符使用,而不是字符常量的一部分。 英文字母区分大小写,如'A'和'a'表示两个不同的字符常量。 字符常量具有数值,其值对应于ASCII值,如'A'的值是65,'a'的值是97。因此字符常量和整型常量可以混合使用。

转义字符 由'\'开头的字符常量,称作转义字符,常用的转义字符如下图所示。 转义字符 含 义 \a \b \f \n \r \t \v \\ 含 义 \a \b \f \n \r \t \v \\ \' \" \ddd \xhh 响铃 退格(Backspace键) 走纸换页 换行符,光标移至下一行行首 回车符,光标移至本行行首 水平制表符(Tab键) 垂直制表符 反斜杠符\ 单引号' 双引号" ddd为1到3位八进制数 hh为1到2位十六进制数

字符串常量 说明 在C语言中,用双引号括起来的零个、一个或多个字符序列称为字符串常量。例如:"China","a","123"。 双引号是字符串的定界符,不是字符串常量的一部分。 字符串在内存中占的字节数是串的长度+1。因为在内存中除了存储每个字符外,在末尾还存储一个结束符"\0"。 字符串常量可以为空。注意区分空串和空格串的区别,空串的长度为0,而空格串的长度是串中空格的个数。

符号常量 在程序设计中,对于某些有特定含义的、经常使用的常量,如数学中经常用到的π(3.14159),可以用标识符来代替,以增加程序的可读性和可维护性。 定义符号常量的一般格式为: #define <符号常量名> <常量> 例如:#define PI 3.14159

符号常量 输入圆的半径,求圆的周长和面积。 #include <stdio.h> #define PI 3.14159 int main() { float r, perimeter, area; printf("输入圆半径:"); scanf("%f",&r); perimeter=2*PI*r; area=PI*r*r; printf("圆周长perimeter=%f\n",perimeter); printf("圆面积area=%f\n",area); return 0; }

符号常量说明 符号常量一般用大写字母表示,以便与变量名区别开。 符号常量的定义不是一个语句,在常量定义后不要加分号。 符号常量的定义可以放在程序的任何位置,一般情况下放在程序的开头。 符号常量一旦定义,则在程序中不允许修改其值。 使用符号常量的优点是“一改全改”。

基本内容 常量 变量 运算符和表达式 数据类型转换 本章小结

变量 所谓变量,就是其值可以发生变化的量。变量在内存中占有一定的存储空间,在该存储空间中存放变量的值。 定义变量的一般形式为: <数据类型> <变量名表列> 例如:int a=3; //定义整型变量a,并使其值初始化为3

变量说明 所有变量在使用前必须先定义。 C语言中的保留字不能用作变量名。 在给变量起名字时,尽可能做到“见名知意”,以增加程序的可读性。 在同一程序中,必须确保同一标识符不得重复定义。 在标准C中,变量的定义一般放在函数体开头的声明部分。

变量的类型 每一个变量都具有类型,变量的类型属性包含变量的数据类型和存储类型。 数据类型是C语言中允许使用的数据的种类。各种数据类型决定了变量的存储容量、数据的取值范围及精度。 变量的存储类型用于指定变量的存储区域、作用域,它体现了变量的物理特性。

变量的类型

整型变量 整型变量的定义形式如下: [<存储类型>] <整型类型> <变量名表列>; [<存储类型>] <整型类型> <变量名表列>; 例如,int a,b; 整型变量 有符号整型变量 有符号短整型变量 有符号基本整型变量 有符号长整型变量 无符号整型变量 无符号短整型变量 无符号基本整型变量 无符号长整型变量

整型变量说明 定义整型变量时,其默认为“有符号类型”,定义无符号整型变量时必须加上“unsigned”。 对于短整型变量和长整型变量,定义时可以省略“int”。 例如: int a; unsigned int b; 所有整型数据在计算机内存中是以补码形式存储的。对于有符号数,最高位是符号位,0表示正数,1表示负数。 例如: short a1, a2, a3,a4; unsigned short b; long c; unsigned long d; 若在VC++中输出短整型的有符号数,应使用“%hd”。 int型在标准C语言中占2个字节,在VC++占4个字节。

实型变量 实型变量的定义形式如下: [<存储类型>] <实型类型> <变量名表列>; [<存储类型>] <实型类型> <变量名表列>; 例如:float a, b, c; //定义a、b、c为单精度型变量 double x, y; //定义x、y为双精度型变量 实型数据有float(单精度型)、double(双精度型)和long double(长双精度型)。

实型变量的操作 由于实型变量是用有限的存储单元存储的,能存放的有效数字也是有限的,在运算时可能会产生误差而使数据“失真”。 实型数据的舍入误差示例。 #include <stdio.h> int main() { float f1,f2; double f3=123456789012.3456789; f1=12345.6789012f; f2=f1+20; printf("f1=%f\nf2=%f\nf3=%f\n",f1,f2,f3); return 0; }

字符型变量 字符型变量的定义形式如下: [<存储类型>] <字符型类型> <变量名表列>; [<存储类型>] <字符型类型> <变量名表列>; 例如:char ch1='a',ch2; ch2='1';

字符型变量应用举例 #include <stdio.h> int main() { char ch1,ch2,ch3; unsigned char ch4=130; ch1='a'; ch2='A'; ch3=130; printf("ch1=%c, value=%d\n",ch1,ch1); printf("ch2=%c, value=%d\n",ch2,ch2); printf("ch3=%c, value=%d\n",ch3,ch3); printf("ch4=%c, value=%d\n",ch4,ch4); return 0; }

字符型变量说明 一个字符变量只能存放一个字符,而不能存放字符串。 字符变量在内存中存放的是字符所对应的ASCII码值,其取值范围是-128~127之间。因此,字符变量可与数值型数据进行运算。 字符变量可用unsigned修饰,此时的取值范围是0~255。

变量赋初值 定义变量后,可以在定义变量的同时给变量赋初值(亦称为初始化),也可以在定义变量后用赋值语句给变量赋初值。 例如: int a=3,b=3,c=3; //定义三个整型变量,并初始化为3 float f1=123.45,total; //定义两个float型变量,f1初始化为123.45 char ch1='a',ch2='b'; //定义两个字符型变量,分别初始化为a和b total=0; //实型变量赋初值为0

变量赋初值说明 可以对多个变量同时赋初值 例如: int a=3,b=3,c=3; 可写成: int a,b,c; a=b=c=3; 或: int b,c; int a=b=c=3; 但是: int a=b=c=3; × 可以仅对部分变量初始化,需要时再对其它变量赋初值。 例如: float f1=123.45,total; 允许使用已经初始化的变量对其它变量进行初始化。 例如: int b,c=3; int a=b=c;

基本内容 常量 变量 运算符和表达式 数据类型转换 本章小结

C语言运算符简介 C语言有丰富的运算符和表达式,正是这些独具风格的运算符和表达式,使得C语言的应用更加广泛,每种运算符除了具有优先级外,还具有不同的结合性,形成了C语言的特色。 运算符 单目运算符 双目运算符 三目运算符

C语言运算符分类 (1)算术运算符 (+ - * / % ++ --) (1)算术运算符 (+ - * / % ++ --) (2)关系运算符 (> >= < <= == !=) (3)逻辑运算符 (! && ||) (4)位运算符 (& | ^ ~ << >>) (5)赋值运算符 (=) (6)条件运算符 (?:) (7)逗号运算符 (,) (8)指针运算符 (* &) (9)求字节数运算符 (sizeof) (10)强制类型转换运算符 ((类型)) (11)成员运算符 (->) (12)下标运算符 ([]) (13)其它 (如函数调用运算符())

算术运算符和算术表达式 算术表达式是由算术运算符将运算量连接起来的式子。在C语言中算术运算符分为基本的算术运算符和自增与自减运算符两类。 基本的算术运算符:+、-、*、/、% 自增、自减运算符:++、--

基本的算术运算符说明 在一个表达式中,若要提高其运算的优先级,可使用“()”。 基本的算术运算的结合方向是左结合的。 对于除法运算,若两个运算量都是整数,则进行整数除运算;若有一个运算量为实数,则进行实数除运算。 “%”要求参加运算的两个运算量都必须是整数,其结果也是整数。 算术表达式的书写形式与数学表达式的书写形式不同。

自增自减运算符说明 注意前置与后置的自增与自减的区别。 自增和自减运算符都是单目运算符,其结合方向是右结合的。 自增和自减运算符只能用于变量,不能用于常量和表达式。 使用自增和自减运算符时,注意避免二义性。

赋值运算符和赋值表达式 由赋值运算符“=”组成的式子称作赋值表达式。表达式的一般形式如下: <变量名> = <表达式> 例如:x=5 a=b+3*c a=5+(c=6) y=max(a,b) (x=y)=a+b × 赋值号的左边只能是变量

赋值运算符和赋值表达式说明 赋值运算符的结合方向是右结合的。 可以连续给若干变量赋相同的值。 C语言中没有赋值语句,在赋值表达式后加上分号,就称为赋值语句。 若赋值号右边的表达式与左边变量的数据类型不一致,系统将会自动进行类型转换,转换成变量的类型。 在赋值运算符“=”之前加上其它运算符,可以构成复合的赋值运算符。C语言中给出了10种复合的赋值运算符。它们是:+=,-=,*=,/=,%=,&=,|=,^=,<<=,>>=。

关系运算符和关系表达式 关系运算符主要用于判断条件的表达式 ,决定值和值之间的关系。C语言提供了六种关系运算符 :>、>=、<、<=、==、!=。关系表达式是用关系运算符将两个操作数连接起来的表达式,关系表达式产生的值只有两个:真(值为1)和假(值为0)。 例如:int a=3, b=5,c=1,d,f,g; d=a+4>b; //d的值为1 f=a<b>=c; //f的值为1 g=b-a==c; //g的值为0

关系运算符和关系表达式说明 关系运算符“<、>、<=、>=”的优先级相同,“==、!=”的优先级相同。前4种高于后2种。 关系运算符的优先级低于算术运算符,高于赋值运算符。 关系运算符的结合方向是左结合的。 赋值号“=” 不同于等号“ ==” 因为浮点型变量有精度限制,尽量不要使用浮点型变量做相等或不相等的关系比较运算。

逻辑运算符和逻辑表达式 有时判断的条件不是一个简单的条件,而是由几个给定简单条件组成的复合条件, 可以通过逻辑运算符实现。C语言中有3种逻辑运算符 :!(逻辑非)、&&(逻辑与)、||(逻辑或)。 逻辑运算符主要用于进一步明确关系表达式之间的关系,逻辑表达式的结果与关系表达式的结果一样,只有两个:真(值为1)和假(值为0)。

逻辑运算符和逻辑表达式说明 逻辑运算符的优先级从高到低的顺序是:!→&&→||。 逻辑运算符中的“&&”和“||”的优先级低于关系运算符,由于“!”是单目运算符,其优先级高于算术运算符。 系统给出的逻辑值只有两个值1(真)和0(假),而在逻辑表达式中参与逻辑运算的操作对象可以是任何非0值或0值,可以是字符型、浮点型、枚举型或指针型的数据。

两种特殊运算 ① (表达式1) && (表达式2) :若 “表达式1”的值为假(0),则整个表达式的结果为假,且不计算“表达式2”的值,但会检查语法错误。只有“表达式1”的值为真(1),才计算“表达式2”的值。 ② (表达式1) || (表达式2) :若 “表达式1”的值为真(1),则整个表达式的结果为真,且不计算“表达式2”的值,但会检查语法错误。只有“表达式1”的值为假(0),才计算“表达式2”的值。

程序举例 阅读程序,分析运行结果。 #include <stdio.h> int main() { int a=4,b=8,c=5; int d1,d2,d3,d4; d1=(a<b)||(++a==5)||(c>b--); printf("a=%d,b=%d,c=%d,d1=%d\n",a,b,c,d1); d2=(a>b)&&(++a==5)||(c>b--); printf("a=%d,b=%d,c=%d,d2=%d\n",a,b,c,d2); d3=(a<b)||(++a==5)&&(c>b--); printf("a=%d,b=%d,c=%d,d3=%d\n",a,b,c,d3); d4=(a>b)&&(++a==5)&&(c>b--); printf("a=%d,b=%d,c=%d,d4=%d\n",a,b,c,d4); return 0; }

条件运算符和条件表达式 条件运算符是由两个符号(?和:)组成,有3个操作对象,称为三目运算符,它是C语言中唯一的一个三目运算符。 条件表达式的一般形式为: 表达式1?表达式2:表达式3 例如:max=a>b?a:b 功能:两个数的最大值,如果a>b,则max=a;否则max=b。

条件运算符和条件表达式说明 条件运算符的优先级高于赋值运算符,低于关系运算符和算术运算符。 条件运算符的结合方向是右结合的。 “表达式2”和“表达式3”不仅可以是数值表达式,还可以是赋值表达式或函数表达式。 “表达式1”、“表达式2”和“表达式3”的类型都可以不同,条件表达式值的类型是“表达式2”和“表达式3”中类型较高的类型。

逗号运算符和逗号表达式 在C语言中,“,”称为逗号运算符,通过逗号运算符,可以将两个或多个表达式连接起来,构成逗号表达式。 逗号表达式的一般形式如下: <表达式1>,<表达式2>,……,<表达式n> 运算过程:先求表达式1的值,再求表达式2的值,……,最后求表达式n的值,而整个表达式的值是表达式n的值。 例如:x=(3+4,a=3, a*5),该x的值是15。

逗号运算符和逗号表达式说明 逗号运算符的优先级最低 不是C程序中所有有逗号的地方都是逗号表达式,定义变量时用的逗号是间隔符,而不是逗号运算符。 逗号表达式多出现在循环语句中。 例如:求1到100的和,可以写成: for(sum=0,i=1;i<=100;sum+=i,++i);

求字节数运算符(sizeof) sizeof是一个单目运算符,它返回常量、变量或数据类型在内存中所占的字节数 求字节数运算符的一般形式如下: 运算过程:先求表达式1的值,再求表达式2的值,……,最后求表达式n的值,而整个表达式的值是表达式n的值。 例如:x=(3+4,a=3, a*5),该x的值是15。

基本内容 常量 变量 运算符和表达式 数据类型转换 本章小结

数据类型的转换 在C语言中,参加运算的数据必须具有具体的数据类型,如果一个运算符两侧的数据类型不同,则先进行类型转换,使二者具有相同的数据类型,然后再进行运算。 数据类型转换 自动转换 强制类型转换

数据类型的自动转换 对于各种数据类型,将占用字节数少的数据向占用字节数多的类型转换。其转换规则如下图所示。

数据类型的自动转换规则 char型和int型数据进行运算,系统先将char型的ASCII值与int型数据进行运算,计算结果为int型。 float和double型数据进行运算,系统将所有float型转换成double型,然后进行运算,计算结果是double型。 int型、float型与double型数据进行运算,系统先将int型和float型转换成double型,然后进行运算,计算结果是double型。

数据类型的自动转换规则 char型、int型、float型数据进行运算,系统先将char型和int型转换成float型,然后进行运算,计算结果是float型。 只要参加运算的数中有double型数据,系统先将其它类型转换成double型,然后进行运算,计算结果是double型。 当进行赋值运算时,若赋值运算符两侧的类型不一致时,先将右侧表达式转换成系统要求的类型,然后进行运算。将计算结果赋给左侧的变量时,数据类型自动转换成左侧变量的数据类型。

数据类型的强制类型转换 C语言提供了使用类型转换运算实现强制类型转换的方法。 强制类型转换的一般形式为: (<类型标识符>) (<表达式>) 作用是把表达式的运算结果强制转换成类型标识符所表示的类型。例如: (int)a; //把a的值转换成int型 (float)(a+b); //把表达式a+b的值转换成float型

强制类型转换说明 类型标识符和表达式都应该用括号括起来。否则只对其后的变量进行强制类型转换。 在强制类型转换时,得到一个所需类型的中间数据,而原来变量的类型未发生变化。 例如:(int)a+b 表示将变量a转换成整型,然后与b相加。 例如: int x; float y=3.14; x=(int)y; //x得到y的整数部分的值3,但y的类型仍然是float型 x=(int)(y+5);

基本内容 常量 变量 运算符和表达式 数据类型转换 本章小结

本章小结 丰富的数据类型和表达式是C语言广泛应用的一个重要方面。本章主要介绍了基本数据类型中的整型数据、实型数据和字符型数据 。 数据有常量和变量之分,所有变量在使用前必须定义。 通过不同的运算符,将若干个运算量连接起来的式子,称为表达式。 运算符有不同的优先级和结合方向。 C语言的数据类型转换有自动转换和强制转换