《C程序设计教程与实验指导》数据类型运算符和表达式

上传人:平*** 文档编号:47670490 上传时间:2018-07-03 格式:PPT 页数:54 大小:550.35KB
返回 下载 相关 举报
《C程序设计教程与实验指导》数据类型运算符和表达式_第1页
第1页 / 共54页
《C程序设计教程与实验指导》数据类型运算符和表达式_第2页
第2页 / 共54页
《C程序设计教程与实验指导》数据类型运算符和表达式_第3页
第3页 / 共54页
《C程序设计教程与实验指导》数据类型运算符和表达式_第4页
第4页 / 共54页
《C程序设计教程与实验指导》数据类型运算符和表达式_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《《C程序设计教程与实验指导》数据类型运算符和表达式》由会员分享,可在线阅读,更多相关《《C程序设计教程与实验指导》数据类型运算符和表达式(54页珍藏版)》请在金锄头文库上搜索。

1、2数据类型、运算符和表达式本章导读 标识符和关键字 数据类型概述 基本数据类型 常值和变量 运算符、表达式与语句 宏定义 其他运算符与语句 cin和cout2.1 标识符和关键字 标识符是程序中用来给变量、函数、数组、类 、命名空间起的名称。其命名规则如下: 由大小写英文字母、数字和下划线组成,而且不能 以数字开头。 标识符区分大小写。 标识符的有效长度取决于编译系统,如Visual C+规 定最长247个字符,Turbo C+规定最长32个字符。一 般建议尽量简短。 标识符不能和关键字同名。关键字asmdefaultfloatoperatorstatic_castunionautodelet

2、eforprivatestructunsignedbooldofriendprotectedswitchusingbreakdoublegotopublictemplatevirtualcasedynamic_castifregisterthisvoidcatchelseinlinereinterpret_castthrowvolatilecharenumintreturntruewchar_tclassexplicitlongshorttrywhileconstexportmutablesignedtypedef. const_castexternnamespacesizeoftypeid.

3、 . continuefalsenewstatictypename2.2 数据类型概述 长双精度浮点型 (longdouble)空数据类型数据类型基本数据类型布尔型(bool)字符型(char)整型 (int)长整型 (long) 短整型 (short) 有符号整型 (signed) 无符号整型 (unsigned)浮点型(float)单精度浮点型 (float)双精度浮点型 (double)复杂数据类型指针数据类型(pointer)结构 (struct) 联合 (union) 枚举 (enum)类(class)2. 3 基本数据类型类 型名 称长度取值范围布尔型bool布尔型或逻辑型1fal

4、se(假) 或true(真)字 符 型char字符型1-128127 signed char有符号字符型1-128127 unsigned char无符号字符型10255整型short 或short int短整型2-3276832767 signed short或signed short int有符号短整型2-3276832767 unsigned short 或unsigned short int无符号短整型2065535 int整型4-21474836482147483647signed 或signed int有符号整型4-21474836482147483647unsigned 或uns

5、igned int无符号整型404294967295long 或long int长整型4-21474836482147483647signed long 或signed long int有符号长整型4-21474836482147483647unsigned long 或unsigned long int无符号长整型404294967295实型float单精度型43.410-383.41038double双精度型81.710-3081.710308long double长双精度型101.210-49323.4104932说明: 1以上字节数是基于32位系统的,对于16位系统,int 、unsi

6、gned int、signed int为2字节。 2float类型数据有效数字为7位,double类型数据 有效数字为15位,double类型数据有效数字为19位 ,其取值范围可能因为机器的不同有微弱的差别。 3Visual C+ 6.0中double和long double相同。 2. 3 基本数据类型2. 3 基本数据类型2.3.1 字符型字符型数据指通常所说的字符,采用ASCII编码(见附录) 来表示,存储时占用一个字节。字符数据的书写形式是用 单引号括起的单个字符,例如用A、a、1、2分别表 示A、B、1、2字符等,以区别于源程序中所用的字符。 字符数据主要用于表示信息,例如程序的输入

7、和输出信息 。2.3.2 整型整型用来描述整数,整型所占有的字节数与具体硬件有关 ,C+中整型分为短整型(short)、基本整型(int)、长整型 (long int),每个整数类型根据有无符号,又分为有符号 (signed)和无符号(unsigned)两种。2. 3 基本数据类型2.3.3 实型 实型用来描述实数,又称浮点型。根据表示实数的精度不同,C+的 实型分为:单精度型float,双精度型double和long double。 实型也可以用科学记数法表示,例如:3.4E-38,其中3.4是尾数,-38是 阶码。 2.3.4 布尔型 布尔型数据用来表示逻辑数据。布尔逻辑值只包含两种:真(

8、true) 或假(false),true的值为整数1,false的值为整数0。 非布尔型数据在运算中可以和布尔型数据互换,0为false,非零值为 true。 2.3.5 void型 void型为无值型,其数据长度为空,主要用于定义无返回值的函数和 无类型指针。 2. 4 常量和变量2.4.1 常量 在程序运行过程中,其值不能改变的量称为常量。 1字面常量 整型常量 .十进制表示:要求第1个数字不能为0(整数0除外),如:35,16 等; .八进制表示:要求以0开头,由数字07组成,如:065,021等 .十六进制表示:要求以0X或0x开头,由数字09和字母af(或者AF) 组成,如:0x12

9、,0x2F等。 实型常量 C+中实型常量有一般形式和指数形式两种表示方法。 .一般形式由数字09和小数点“.”组成,如:0.12,12.3,.03等; .指数形式由尾数,E或e和阶数组成,如:1E12,.3E9等。 实型数也可以加后缀f、d、和l(或F、D、和L)。 字符型常量 字符型常量是由单引号括起来的单个字符 2. 4 常量和变量转义字符字 符ASCII 值 含 义十进制十六进制aBEL70x07响铃bBS80x08退格(相当于Backspace)fFF120x0C换页nLF100x0A换行rCR130x0D回车(Enter)tHT90x09水平制表符(Tab)vVT110x0B纵向制表

10、符0空00x00空字符920x5C反斜杠390x27单引号”“340x22双引号ddd可表示任意字符01270000771到3位8进制数所代表的字符xhh可表示任意字符0127x00xFF1到2位16进制数所代表的字符/Example ex2_1.cpp #include #include using namespace std;int main () cout(大于)、=(大于等于)、(右移)、 b = + a ;cout = 执行该语句的语义是:如ab为真,则把a赋予max,否则把b 赋予max。 条件运算符的运算优先级低于关系运算符和算术运算符,但高于赋值符 , 其中“?”和“:”是一对

11、运算符,不能分开单独使用,其结合方向是自 右至左。 2.8 其他运算符与语句2.8.5 sizeof运算符 sizeof运算符是一元运算符,用于计算数据类型或表达式占用内存的字节数。格 式为: sizeof(类型名) 或 sizeof(表达式) 例如:sizeof(int) /值为4(32位机器)sizeof(1+2.5) /值为8,因为1和2.5都转换为double类型 2.9 C+语言的输入和输出 输入/输出(又称I/O)是程序的基本功能。数据通过 输入设备如键盘、文件输入,运行结果通过输出设备如 显示器、打印机输出。C+没有专门的I/O语句,I/O操作是通过库函数或 对象实现的,其中包括

12、C语言标准库stdio.h中的printf() 、scanf(),C+旧标准库iostream.h和C+新标准库 iostream中的cin、cout。使用新标准库中的cin、cout需要在程序中插入以 下代码:#include using namespace std; 2.9 C+语言的输入和输出 2.9.1 coutcout可以直接输出基本数据类型的数据,其一般格式如下: cout 变量名1变量名2变量名n; 其中“”称为提取运算符。程序将暂定执行,等待用户从键盘上输入相应的数 据。例如: int a,b; cinab; 程序运行时可以输入: 100 200 “Enter”表示回车。多个数

13、据之间用一个或多个空格分隔,输入的数据需要和变 量一一对应,上面的输入将使得a等于100,b等于200。 给字符类型变量输入数据时,如果需要提取空格等空白字符(空格、TAB、 Enter),需要加上输入控制符noskipws: char c1,c2; cin noskipws c1 c2; 当输入:w s 则c1为字符a,而c2为空格。 /Example e2_3.cpp #include #include using namespace std; int main() char c1,c2; coutskipwsc1c2; coutnoskipwsc1c2; cout #include us

14、ing namespace std;int main() char c; cout c ; c = c + 32; cout #include using namespace std; int main() float temprature; cout temprature; temprature = (temprature-32)*5/9; cout #include using namespace std;int main() cout StartPost ; cout StartHour StarMinute StarSecond ; cout EndPost ; cout EndHou

15、r EndMinute EndSecond ;int ElapsedTS = ( EndHour * 3600 + EndMinute * 60 + EndSecond ) - ( StartHour * 3600 + StarMinute * 60 + StarSecond ) ;【例2.6】汽车在有里程标志的公路上行进。输入开始和结束的里程及时间 (以时、分、秒输入),计算并输出平均速度(公里数/每小时)。int ElapsedHour = ElapsedTS / 3600 ;int ElapsedMinute = ElapsedTS % 3600 / 60 ;int ElapsedSecond = ElapsedTS % 60 ;double ElapsedTime = ElapsedHour + ElapsedMinute / 60.0 + ElapsedSecond / 3600.0 ;int Distant = EndPost - StartPost ;double Velocity = Distant / ElapsedTime ;cout “汽车行驶了“ Distant “公里n“ “消耗时间“ ElapsedHour “

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号