书签 分享 收藏 举报 版权申诉 / 45
上传文档赚钱

类型数据结构第二章课件.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:4904532
  • 上传时间:2023-01-23
  • 格式:PPT
  • 页数:45
  • 大小:1.13MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《数据结构第二章课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    数据结构 第二 课件
    资源描述:

    1、12021/2/21第二章第二章 简单顺序程序设计简单顺序程序设计本章教学目标本章教学目标(1)掌握)掌握C语言程序结构和组成;语言程序结构和组成;(2)掌握)掌握C语言常用数据类型定义以及使用方法;语言常用数据类型定义以及使用方法;(3)掌握)掌握C语言中运算符的种类、优先级和结合性;语言中运算符的种类、优先级和结合性;(4)掌握输入与输出函数的使用方法;)掌握输入与输出函数的使用方法;(5)理解顺序结构的程序设计思路)理解顺序结构的程序设计思路 22021/2/212.1 计算一个学生的成绩总分和平均分计算一个学生的成绩总分和平均分 2.1.1 2.1.1 问题描述问题描述 输入一位学生三

    2、门课程输入一位学生三门课程(数学、英语和计算机数学、英语和计算机)的成绩,计算该学生的总分和平均分程序。的成绩,计算该学生的总分和平均分程序。输入三门课程成绩总分=三门课程成绩之和平均分=总分/3输出总分和平均分输入转换与处理结果输出图2_1问题处理过程(从问题空间的角度)32021/2/21使用scanf函数输入三门课程成绩总分=三门课程成绩之和平均分=总分/3使用printf函数输出总分和平均分输入转换与处理结果输出图2_2问题处理过程(从平台空间的角度)2.1 计算一个学生的成绩总分和平均分计算一个学生的成绩总分和平均分 解题思路:解题思路:Step1:定义三个存放输入成绩的变量,一个存

    3、放总分的变量和一个存放平均成:定义三个存放输入成绩的变量,一个存放总分的变量和一个存放平均成绩的变量;绩的变量;Step2:分别输入三个成绩;:分别输入三个成绩;Step3:把三个成绩相加,并存放于总分变量中;:把三个成绩相加,并存放于总分变量中;Step4:计算平均成绩,并存放于平均成绩变量中;:计算平均成绩,并存放于平均成绩变量中;Step5:输出总分变量和平均成绩变量的值;:输出总分变量和平均成绩变量的值;Step6:结束。结束。42021/2/21#include void main()int Math,English,Computer,Sum;/*定义变量*/double Avera

    4、ge;printf(Please Input Math Score:n);scanf(%d,&Math);printf(Please Input English Score:n);scanf(%d,&English);printf(Please Input Computer Score:n);scanf(%d,&Computer);Sum=Math+English+Computer;Average=Sum/3.0;printf(The total Score:%d,Average Score is%.2fn,Sum,Average);2.1 计算一个学生的成绩总分和平均分计算一个学生的成绩总分

    5、和平均分 52021/2/21编码分析与思考编码分析与思考:(1)在在C语言中,语言中,main()函数是一个特殊的函数,称为主函数,任何一函数是一个特殊的函数,称为主函数,任何一个个C语言程序都必须有且只有一个主函数,程序是从主函数开始执行,语言程序都必须有且只有一个主函数,程序是从主函数开始执行,一对一对“”把构成函数的语句括起来,称为函数体;把构成函数的语句括起来,称为函数体;(2)程序中程序中int和和double是是C语言中的关键词;语言中的关键词;(3)在上例程序中,在上例程序中,Math、English、Computer、Sum称为变量标称为变量标识符,也常简称为变量,用来存放在

    6、程序运行过程中所需要的数据,变识符,也常简称为变量,用来存放在程序运行过程中所需要的数据,变量在使用之前必须先进行定义;量在使用之前必须先进行定义;Please Input Math Score:是是字符串常量;字符串常量;n是转义字符,表示换行;是转义字符,表示换行;(4)printf()和和scanf()是调用系统输出、输入函数;是调用系统输出、输入函数;2.1 计算一个学生的成绩总分和平均分计算一个学生的成绩总分和平均分 62021/2/21(5)在在C语言中,所有的语句都必须使用分号语言中,所有的语句都必须使用分号“;”作为结束符进行结束;作为结束符进行结束;(6)#include 在

    7、在C语言中称预编译处理命令,它不属于语言中称预编译处理命令,它不属于C语语言的语句,因此其后没有分号;言的语句,因此其后没有分号;stdio.h称为标准输入输出头文件,程称为标准输入输出头文件,程序中用到的序中用到的printf()和和scanf()函数就来源于该文件的声明中;函数就来源于该文件的声明中;(7)&表示取地址符号,在使用表示取地址符号,在使用scanf()函数时,一定要注意,普通变量函数时,一定要注意,普通变量前一定不能少前一定不能少&。scanf(%d,&Math)的含义是从键盘输入一个的含义是从键盘输入一个十进制整型数据赋给十进制整型数据赋给Math;(8)“/*定义变量定义

    8、变量*/”称为称为C语言程序的注释,用来说明程序或者语句的语言程序的注释,用来说明程序或者语句的作用,说明的字符写在一对作用,说明的字符写在一对“/*”和和“*/”之间,在程序进行编译和运之间,在程序进行编译和运行时,系统对注释不做处理。在程序中适当的添加注释可以增加程序的行时,系统对注释不做处理。在程序中适当的添加注释可以增加程序的可读性;可读性;(9)在在C语言程序中,程序中所用到的所有标点符号都应该是在英文状态下语言程序中,程序中所用到的所有标点符号都应该是在英文状态下的半角英文符号。的半角英文符号。2.1 计算一个学生的成绩总分和平均分计算一个学生的成绩总分和平均分 72021/2/2

    9、12.2.1关键词关键词2.2 C语言的词法记号语言的词法记号 autobreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatforgotoifIntlongregisterreturnshortsignedsizeofstaticstructswitchtypedefwhileunionunsignedvoidvolatile82021/2/212.2.2 标识符标识符 2.2 C语言的词法记号语言的词法记号 标识符是用户自行定义的符号,用来标识标识符是用户自行定义的符号,用来标识常量、变量、函数、标号等。常量、变量、函数、标

    10、号等。C语言中规定,语言中规定,所有的符号必须先定义或者说明后才能使用。所有的符号必须先定义或者说明后才能使用。ANSI C规定:标识符是由字母或者下划线规定:标识符是由字母或者下划线“_”开头,字母数字的任意组合,在开头,字母数字的任意组合,在Turbo C中长度不能超过中长度不能超过32个字符。个字符。92021/2/212.2.2 标识符标识符 2.2 C语言的词法记号语言的词法记号 标识符是用户自行定义的符号,用来标识标识符是用户自行定义的符号,用来标识常量、变量、函数、标号等。常量、变量、函数、标号等。C语言中规定,语言中规定,所有的符号必须先定义或者说明后才能使用。所有的符号必须先

    11、定义或者说明后才能使用。ANSI C规定:标识符是由字母或者下划线规定:标识符是由字母或者下划线“_”开头,字母数字的任意组合,在开头,字母数字的任意组合,在Turbo C中长度不能超过中长度不能超过32个字符。个字符。102021/2/212.2.2 标识符标识符 2.2 C语言的词法记号语言的词法记号 在在C语言中,在命名标识符时应该注意一下问题:语言中,在命名标识符时应该注意一下问题:(1)标识符只能由字母、数字和下划线三类字符组成;标识符只能由字母、数字和下划线三类字符组成;(2)第一个字符必须是字母(第一个字符也可以是下划线,但被视作系统第一个字符必须是字母(第一个字符也可以是下划线

    12、,但被视作系统自定义的标识符);自定义的标识符);(3)大写字母和小写字母被认为是两个不同的字符,如大写字母和小写字母被认为是两个不同的字符,如A和和a是两个不同是两个不同的标识符;的标识符;(4)标识符可以任意长,但只有前标识符可以任意长,但只有前32位有效;位有效;(5)标识符不能是标识符不能是C的关键字;的关键字;(6)一般情况下,大写字母用来表示常量标识符,变量等其他标识符用大一般情况下,大写字母用来表示常量标识符,变量等其他标识符用大小写字母组合或者小写字母表示;在用户给标识符起名时,最好选择相应小写字母组合或者小写字母表示;在用户给标识符起名时,最好选择相应意思的英文单词、拼音或者

    13、它们的缩写,这样可以增加程序的可读性。意思的英文单词、拼音或者它们的缩写,这样可以增加程序的可读性。112021/2/212.2.3 分隔符分隔符 2.2 C语言的词法记号语言的词法记号 分隔符用来分隔各种词法记号,分隔符用来分隔各种词法记号,C语言中常见的分语言中常见的分隔符有:隔符有:():=;#.122021/2/212.3.1数据类型数据类型2.3数据类型、常量和变量数据类型、常量和变量 在程序设计中,所有在程序中使用的数据都应该属于在程序设计中,所有在程序中使用的数据都应该属于某一种数据类型,不同数据类型的数据的差异在于:某一种数据类型,不同数据类型的数据的差异在于:(1)在内存中占

    14、据的存储区的长度不同;)在内存中占据的存储区的长度不同;(2)对应不同的取值范围;)对应不同的取值范围;(3)对应着不同的一些所允许的操作。)对应着不同的一些所允许的操作。132021/2/212.3数据类型、常量和变量数据类型、常量和变量 双精度型双精度型doubledouble数据类型数据类型基本类型基本类型自定义类型自定义类型指针类型指针类型整型整型intint实型(浮点型)实型(浮点型)字符型字符型charchar结构类型结构类型structstruct数组类型数组类型枚举型类型枚举型类型enumenum联合型类型联合型类型unionunion单精度型单精度型floatfloat图图2

    15、_3 C2_3 C语言数据类型语言数据类型142021/2/212.3.1数据类型数据类型2.3数据类型、常量和变量数据类型、常量和变量 在程序设计中,所有在程序中使用的数据都应该属于在程序设计中,所有在程序中使用的数据都应该属于某一种数据类型,不同数据类型的数据的差异在于:某一种数据类型,不同数据类型的数据的差异在于:(1)在内存中占据的存储区的长度不同;)在内存中占据的存储区的长度不同;(2)对应不同的取值范围;)对应不同的取值范围;(3)对应着不同的一些所允许的操作。)对应着不同的一些所允许的操作。152021/2/212.3.1 数据类型数据类型2.3数据类型、常量和变量数据类型、常量

    16、和变量 在程序设计中,所有在程序中使用的数据都应该属于在程序设计中,所有在程序中使用的数据都应该属于某一种数据类型,不同数据类型的数据的差异在于:某一种数据类型,不同数据类型的数据的差异在于:(1)在内存中占据的存储区的长度不同;)在内存中占据的存储区的长度不同;(2)对应不同的取值范围;)对应不同的取值范围;(3)对应着不同的一些所允许的操作。)对应着不同的一些所允许的操作。162021/2/211.整型整型2.3数据类型、常量和变量数据类型、常量和变量 整型可分为:整型可分为:基本型(基本型(int)、短整型()、短整型(short或或short int)、)、长整型(长整型(long或者

    17、或者long int)和无符号型。)和无符号型。无符号型又可细分为:无符号型又可细分为:无符号整型(无符号整型(unsigned或或unsigned int)无符号短整型(无符号短整型(unsigned short或或unsigned short int)无符号长整型(无符号长整型(unsigned long或者或者unsigned long int)172021/2/211.整型整型2.3数据类型、常量和变量数据类型、常量和变量 表表2_2各种整型数据所占内存大小及数据范围各种整型数据所占内存大小及数据范围数据类型数据类型占字节占字节位数位数最高位最高位范围范围int2Byte16bit符号

    18、位符号位1:负数负数,0:正数正数-3276832767 (-215 215-1)short2Byte16bit符号位符号位1:负数负数,0:正数正数-3276832767 (-215 215-1)long4Byte32bit符号位符号位1:负数负数,0:正数正数-21474836482147483647(-231 231-1)unsigned 2Byte16bit数据位数据位065535 (0 216-1)unsigned short2Byte16bit数据位数据位065535 (0 216-1)unsigned long4Byte32bit数据位数据位04294967295 (0 232-

    19、1)182021/2/212.浮点型浮点型2.3数据类型、常量和变量数据类型、常量和变量 浮点型用来表示实型数据,分为两种:浮点型用来表示实型数据,分为两种:单精度(单精度(float)和双精度()和双精度(double)。)。表表2_3浮点型数据所占内存大小和数据范围浮点型数据所占内存大小和数据范围数据类型数据类型占字节占字节位数位数有效数字位数有效数字位数数的绝对值范围数的绝对值范围float4Byte32bit6 71038 1038double8Byte64bit151610308 10308192021/2/213.字符型字符型2.3数据类型、常量和变量数据类型、常量和变量 字符型在

    20、字符型在C语言中用语言中用char表示,占内存存储空间表示,占内存存储空间1Byte,一般用一般用8位二进制数据表示一个字符,实际上这位二进制数据表示一个字符,实际上这8位二进位二进制数表示该字符的制数表示该字符的ASCII码值,因此字符型数据整型数码值,因此字符型数据整型数据关系密切,可把字符型看作一种特殊的整型,它和整型据关系密切,可把字符型看作一种特殊的整型,它和整型数据之间可以混合使用。数据之间可以混合使用。202021/2/212.3数据类型、常量和变量数据类型、常量和变量 2.3.2 常量常量 常量是指在程序运行过程中其值不能被改变的量。常量是指在程序运行过程中其值不能被改变的量。

    21、在在C C语言中常量包括数值型常量(包括整型常量和浮点型语言中常量包括数值型常量(包括整型常量和浮点型常量)、字符型常量、符号常量,还有字符串常量、转常量)、字符型常量、符号常量,还有字符串常量、转义字符常量和地址常量等。义字符常量和地址常量等。212021/2/211.整型常量整型常量2.3数据类型、常量和变量数据类型、常量和变量 main()int x;x=123;printf(%dn,x);x=0123;printf(%d,x);x=0 x123;printf(%dn,x);分析下面程序运行结果:分析下面程序运行结果:222021/2/211.整型常量整型常量2.3数据类型、常量和变量数

    22、据类型、常量和变量 整型常量在程序中可以有多种表示形式:整型常量在程序中可以有多种表示形式:(1)以数字)以数字0开头由开头由07组成的为八进制数据;组成的为八进制数据;(2)以)以0 x或者或者0X开头由开头由09和和AF或者(或者(af)组成的)组成的为十六进制数据;为十六进制数据;(3)其余的为十进制数据。)其余的为十进制数据。为了表示这些类型可以在数据的末尾用一个字母表示,为了表示这些类型可以在数据的末尾用一个字母表示,如:跟如:跟L或或l时,表示该整型常量是长整型常量,时,表示该整型常量是长整型常量,123456L 0X5F78DAL。跟。跟U或或u表示无符号整型,表示无符号整型,1

    23、2345U。232021/2/212.浮点常量浮点常量2.3数据类型、常量和变量数据类型、常量和变量 表示形式:表示形式:3.14 1.3105 2.810-3 3.14 或或 3.14 1.3E5 2.8E-3数学中数学中C语言中语言中注意:注意:E3 2E6.5 是错误的。是错误的。242021/2/212.浮点常量浮点常量2.3数据类型、常量和变量数据类型、常量和变量 指数形式的浮点常量指数形式的浮点常量E E或者或者e e前面必须有数字,后面前面必须有数字,后面必须为整数。必须为整数。由于浮点型根据表示精度的不同又可分为单精度和由于浮点型根据表示精度的不同又可分为单精度和双精度两种,如

    24、果浮点型常量后缀是双精度两种,如果浮点型常量后缀是“f”f”或或“F”F”,则,则被当成单精度型,否则,被当成单精度型,否则,C C语言编译系统总是将浮点型常语言编译系统总是将浮点型常量处理成双精度型的。量处理成双精度型的。注意:注意:252021/2/213.字符常量字符常量2.3数据类型、常量和变量数据类型、常量和变量 表示形式:表示形式:字符常量是采用一对单引号括起来的一个单字字符常量是采用一对单引号括起来的一个单字符,其中的单引号只起定界作用。符,其中的单引号只起定界作用。表表2_3转义字符表转义字符表字符形字符形式式含义含义字符字符形式形式含义含义n换行换行f换行但不回车换行但不回车

    25、t横向跳格横向跳格反斜杠反斜杠v竖向跳格竖向跳格单引号单引号b退格退格xhhh表示表示1到到2位位16进制数代进制数代表的字符表的字符r回车回车dddd表示表示1到到3位位8进制数代进制数代表的字符表的字符262021/2/212.3数据类型、常量和变量数据类型、常量和变量#include main()char ch;ch=8;printf(char ch is:%cn,ch);printf(char chs ASCII code:%dn,ch);分析下面程序运行结果:分析下面程序运行结果:272021/2/212.3数据类型、常量和变量数据类型、常量和变量 在在C语言中使用字符常量时应该注意

    26、:语言中使用字符常量时应该注意:(1)字符串常量只能用单引号括起来,不能用双引号或其它字符串常量只能用单引号括起来,不能用双引号或其它括号;括号;(2)字符常量只能是单个字符,不能是字符串;字符常量只能是单个字符,不能是字符串;(3)字符可以是字符集中的任意字符,但数字被定义为字符字符可以是字符集中的任意字符,但数字被定义为字符之后就不能直接参与数值运算之后就不能直接参与数值运算。282021/2/214.字符串常量字符串常量2.3数据类型、常量和变量数据类型、常量和变量 表示形式:表示形式:字符串常量是用一对双引号括起来的零个、一字符串常量是用一对双引号括起来的零个、一个或者多个字符序列,其

    27、中的双引号只起定界个或者多个字符序列,其中的双引号只起定界作用。作用。如:如:I am a teacher.。一个字符常量在内存中占一个字。一个字符常量在内存中占一个字节的存放空间,字符串常量在内存中所占的存储空间长节的存放空间,字符串常量在内存中所占的存储空间长度等于字符串中所有字符数加度等于字符串中所有字符数加1,多一个长度是因为编译,多一个长度是因为编译程序会自动的在每个字符串的末尾添加一个字符串结束程序会自动的在每个字符串的末尾添加一个字符串结束标志标志0 292021/2/215.符号常量符号常量2.3数据类型、常量和变量数据类型、常量和变量 符号常量:用符号代替直接的数字表示的常量

    28、。符号常量:用符号代替直接的数字表示的常量。定义符号常量的一般形式:定义符号常量的一般形式:#define 标识符标识符 常量常量 其中,其中,#define称为宏定义命令,其功能是把该标识符称为宏定义命令,其功能是把该标识符定义为其后的常量值。一经定义,在程序中出现该标识定义为其后的常量值。一经定义,在程序中出现该标识符的地方均会被该常量取代。符的地方均会被该常量取代。例如:例如:#define PI 3.14.5926 302021/2/212.3数据类型、常量和变量数据类型、常量和变量 2.3.3 变量变量变量是指在程序运行过程中其值可以改变的量。变量是指在程序运行过程中其值可以改变的量

    29、。变量说明的形式如下:变量说明的形式如下:类型说明符类型说明符 ;这里的类型说明符是指这里的类型说明符是指C C语言中的有效数据类型。变量名表语言中的有效数据类型。变量名表是一个或多个标识符名,每个标识符之间用是一个或多个标识符名,每个标识符之间用“,”,”分隔。变分隔。变量名的命名规则符合标识符的命名规则即可。变量是存储量名的命名规则符合标识符的命名规则即可。变量是存储数据的值的空间。它在内存中占据一定的存储单元,该存数据的值的空间。它在内存中占据一定的存储单元,该存储单元用来存放变量的值。一旦变量被说明后,系统会根储单元用来存放变量的值。一旦变量被说明后,系统会根据其类型,给变量分配该类型

    30、所占有的内存大小空间。据其类型,给变量分配该类型所占有的内存大小空间。312021/2/212.3数据类型、常量和变量数据类型、常量和变量 2.3.3 变量变量10a图2_4 变量名与变量值变量名变量值存储单元int a;322021/2/212.3数据类型、常量和变量数据类型、常量和变量 2.3.3 变量变量在定义变量时应注意以下几点:在定义变量时应注意以下几点:(1)(1)允许在一个类型说明符后,定义多个相同类型的允许在一个类型说明符后,定义多个相同类型的变量,各变量之间用逗号分隔,类型说明符和变量名之变量,各变量之间用逗号分隔,类型说明符和变量名之间至少用一个空格隔开;间至少用一个空格隔

    31、开;(2)(2)变量的说明语句后必须以英文状态下的变量的说明语句后必须以英文状态下的“;”;”结尾;结尾;(3)(3)变量的定义必须放在变量的使用之前,一般情况变量的定义必须放在变量的使用之前,一般情况下放在函数体的开始部分位置。下放在函数体的开始部分位置。332021/2/212.3数据类型、常量和变量数据类型、常量和变量 变量初始化与变量的赋值变量初始化与变量的赋值 变量的初始化是指在定义变量时直接给变量赋值。变量的初始化是指在定义变量时直接给变量赋值。例如:例如:int number50;变量的赋值就是把数据传送到变量所代表的存储空间的变量的赋值就是把数据传送到变量所代表的存储空间的操作

    32、。在操作。在C语言中,变量的赋值是用赋值运算符语言中,变量的赋值是用赋值运算符“=”来实来实现。现。一般格式:一般格式:变量名变量名=表达式表达式;例如:例如:number5;/*把整数把整数5赋给整型变量赋给整型变量number*/在给变量赋值时应该注意:在给变量赋值时应该注意:变量应该先定义,再赋值。变量应该先定义,再赋值。342021/2/212.4运算符和表达式运算符和表达式 运算是指对数据进行加工和处理,那么用来表示各种运算是指对数据进行加工和处理,那么用来表示各种运算的符号称为运算符。运算的符号称为运算符。C语言中的运算符包括:赋值运算语言中的运算符包括:赋值运算符、算术运算符、逻

    33、辑运算符、位逻辑运算符、位移运算符、算术运算符、逻辑运算符、位逻辑运算符、位移运算符、关系运算符、自增自减运算符等多种符、关系运算符、自增自减运算符等多种。2.4.1 赋值运算符与赋值表达式赋值运算符与赋值表达式由由“=”连接的式子称为赋值表达式。一般格式为:连接的式子称为赋值表达式。一般格式为:变量名表达式变量名表达式 赋值表达式的功能为:计算表达式的值,再把值送入左赋值表达式的功能为:计算表达式的值,再把值送入左边的变量对应的存储空间,变量的值为赋值号右侧表达式边的变量对应的存储空间,变量的值为赋值号右侧表达式的值,整个赋值表达式的值取变量的值的值,整个赋值表达式的值取变量的值。35202

    34、1/2/212.4运算符和表达式运算符和表达式 使用赋值运算符使用赋值运算符“=”时,应该注意以下几点:时,应该注意以下几点:(1)赋值运算符)赋值运算符“=”的左侧必须是一个变量,不能是表达的左侧必须是一个变量,不能是表达式或者常量;式或者常量;例如:例如:a=5+b=4,是错误的,但是写成,是错误的,但是写成a=5+(b=4)就对了。就对了。(2)赋值运算符)赋值运算符“=”不是等于运算符;不是等于运算符;等于运算符是等于运算符是“=”,用来判断两边的表达式是否相等的,用来判断两边的表达式是否相等的,最终的结果是真(非最终的结果是真(非0),或者假(),或者假(0)。)。362021/2/

    35、212.4运算符和表达式运算符和表达式 2.4.2算术运算符与算术表达式算术运算符与算术表达式 在在C语言中有四个单目和五个双目算术运算符,由这些运语言中有四个单目和五个双目算术运算符,由这些运算符把常量、变量或者表达式连接起来的式子称为算术表算符把常量、变量或者表达式连接起来的式子称为算术表达式。常见的算术运算符如下表达式。常见的算术运算符如下表2_5所示。在使用算术运算所示。在使用算术运算符时,应该注意以下问题:符时,应该注意以下问题:(1)乘法运算符和除法运算符的表示形式与数学中不同;)乘法运算符和除法运算符的表示形式与数学中不同;(2)对于除法运算符,如果除数和被除数均为整数,结)对于

    36、除法运算符,如果除数和被除数均为整数,结果也为整数,舍弃小数部分;如果除数和被除数中有一个果也为整数,舍弃小数部分;如果除数和被除数中有一个为浮点型数据,则结果为浮点型(为浮点型数据,则结果为浮点型(double)。)。372021/2/212.4运算符和表达式运算符和表达式 2.4.2算术运算符与算术表达式算术运算符与算术表达式(3)取余运算符要求两侧的数据均为整型;)取余运算符要求两侧的数据均为整型;(4)+和和-运算符只能用于变量,不能用于表达式或者运算符只能用于变量,不能用于表达式或者常量。常量。(5)自增和自减运算符既可前置也可后置,目的都是参)自增和自减运算符既可前置也可后置,目的

    37、都是参与运算的变量增与运算的变量增1或者减或者减1。当与赋值运算符一起用时,。当与赋值运算符一起用时,又有不同,前置时变量先增又有不同,前置时变量先增1或减或减1,后赋值,后置时先,后赋值,后置时先赋值,变量值再增赋值,变量值再增1或减或减1。382021/2/212.4运算符和表达式运算符和表达式 2.4.3复合赋值运算符复合赋值运算符 在赋值运算符当中,还有一类在赋值运算符当中,还有一类C/C+独有的复合赋值运算符。它独有的复合赋值运算符。它们实际上是一种缩写形式,使得对变量的改变更为简洁。例如:们实际上是一种缩写形式,使得对变量的改变更为简洁。例如:Total=Total+3,它的意思是

    38、,它的意思是Total的值加的值加3,然后在赋值给,然后在赋值给Total。为了简。为了简化,上面的代码也可以写成:化,上面的代码也可以写成:Total+=3;其中其中“+=”就是一个复合赋值就是一个复合赋值运算符。运算符。表表2_6 C语言中常见的复合赋值运算符语言中常见的复合赋值运算符符号符号功能功能符号符号功能功能+=加法赋值加法赋值|=位逻辑或赋值位逻辑或赋值-=减法赋值减法赋值=右移赋值右移赋值/=除法赋值除法赋值&=位逻辑与赋值位逻辑与赋值%=取余运算赋值取余运算赋值=位逻辑异或赋值位逻辑异或赋值392021/2/212.4运算符和表达式运算符和表达式 2.4.3条件运算符与条件表

    39、达式条件运算符与条件表达式 在在C语言中有一个惟一的三目运算符,就是条件运算语言中有一个惟一的三目运算符,就是条件运算符符?:,由条件运算符把表达式连接起来的式子,称为条件,由条件运算符把表达式连接起来的式子,称为条件表达式。其一般形式为:表达式。其一般形式为:?:含义是:含义是:首先计算首先计算的值,如果为真(非的值,如果为真(非0),则),则的值就为整个条件表达式的值,否则,的值就为整个条件表达式的值,否则,的值为的值为整个条件表达式的值。整个条件表达式的值。402021/2/212.4运算符和表达式运算符和表达式 2.4.4 逗号运算符与逗号表达式逗号运算符与逗号表达式 C语言中还提供了

    40、一种被称为逗号运算符的特殊运算语言中还提供了一种被称为逗号运算符的特殊运算符符“,”,用它将两个或者两个以上的表达式连接起来的式子,用它将两个或者两个以上的表达式连接起来的式子,称逗号表达式。一般形式为:称逗号表达式。一般形式为:,其含义是先求其含义是先求 的值,再求的值,再求 的值,最的值,最后整个逗号表达式的值取后整个逗号表达式的值取的值。的值。412021/2/212.5输入函数输入函数scanf()和输出函数和输出函数printf()2.5.1 格式化输入函数格式化输入函数scanf()(1)scanf()函数的一般形式函数的一般形式scanf()是系统提供的用于输入的库函数,在头系统

    41、文件是系统提供的用于输入的库函数,在头系统文件stdio.h中声明,中声明,该函数用于从键盘输入给定格式的数据,其一般形式:该函数用于从键盘输入给定格式的数据,其一般形式:scanf(“格式控制符格式控制符”,&输入参数输入参数1,&输入参数输入参数n);例如:例如:int x,y;scanf(“%d,%d”,&x,&y);当程序运行时就需要输入两个整型数据,如:当程序运行时就需要输入两个整型数据,如:10,20 注意:两个数字间的注意:两个数字间的“,”不能少。不能少。(2)格式控制符说明格式控制符说明scanf函数的格式控制符以函数的格式控制符以%开始,以一个格式字符结束,中间可以插开始,

    42、以一个格式字符结束,中间可以插入附加字符。入附加字符。422021/2/212.5输入函数输入函数scanf()和输出函数和输出函数printf()2.5.2 格式化输出函数格式化输出函数printf()printf()函数的一般形式:函数的一般形式:printf()是系统提供的用于输出数据的库函数,在头系统是系统提供的用于输出数据的库函数,在头系统文件文件stdio.h中声明,该函数用于在显示器上按给定格式输出中声明,该函数用于在显示器上按给定格式输出数据,其一般形式:数据,其一般形式:printf(“格式控制符格式控制符”,输出表列输出表列);例如:例如:int x=10,y=20;pri

    43、ntf(“x=%d,y=%d”,x,y);程序的运行结果是:程序的运行结果是:x=10,y=20 432021/2/212.5输入函数输入函数scanf()和输出函数和输出函数printf()2.5.2 格式化输出函数格式化输出函数printf()对于输入和输出函数要注意两句话:对于输入和输出函数要注意两句话:(1)(1)对于输入函数:输入时,对于输入函数:输入时,“对于格式符,按照对对于格式符,按照对应格式进行输入,非格式符,原样输入应格式进行输入,非格式符,原样输入”。(2)(2)对于输出函数:输出时,对于输出函数:输出时,“对于格式符,按照对对于格式符,按照对应的格式把相应变量的值,按给定格式输出,非格式应的格式把相应变量的值,按给定格式输出,非格式符原样输出符原样输出”。442021/2/21谢谢45

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:数据结构第二章课件.ppt
    链接地址:https://www.163wenku.com/p-4904532.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库