数据类型、运算符和表达式11.ppt_第1页
数据类型、运算符和表达式11.ppt_第2页
数据类型、运算符和表达式11.ppt_第3页
数据类型、运算符和表达式11.ppt_第4页
数据类型、运算符和表达式11.ppt_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

字符串常量:指一对双引号引起来的一串字符,也称为串常量或字符串。如“China”、“hello 567+ ”等。,串结束标志:字符串在内存中存储时,是按顺序逐个字符存储的,并自动在末尾加上一个字符0 ,该字符称为串结束标志。,理解语句:char a=a; char b=a; char ab=111;,例:以下正确的字符常量是:123 A abc 89 012 23 N 012 0xA23,问:S与“S”有何不同?,注意:单引号之中只能有一个字符,字符串中可以有多个字符,可包含转义字符。如:”chian”234”。,字符串的两种输出方法: 直接输出: printf(“字符串”);如printf(“welcome”); 转换输出: printf(“s”,“字符串”); 如:printf(“s”,“welcome”);,字符串的长度:字符串中0字符之前的所有字符个数。字符串存储空间字节数字符串长度1。,求字符串的长度函数strlen:如strlen(“dfk12345”),需加头文件string.h。,符号常量:用标识符表示常量,这时标识符称为符号常量。定义符号常量的两种方法:,方法1:在标准变量定义前加const,将标识符说明为常量。如,const int N=100; (C+支持此方式) const float PI=3.14159;这时N、PI是符号常量。,方法2:宏定义的方法。如:#define PI 3.1415926 这时PI是符号常量。,注意:方法1定义符号常量时必须进行初始化赋值,因为程序运行时其值不能被修改。,符号常量的意义:1、可读性强;2、可维护性强。,2)变量:程序执行过程中可以被修改的量。,定义变量格式:数据类型 变量名表;,例:int stu_num; unsigned long age; double score; float x1,x2,x3;等。,决定变量所占存储空间的大小以及运算性质等,单变量名或者多变量名组成,多变量时各变量用逗号分开,注意:1、变量名是自定义标识符,必须满足其格式要求,如不能用系统关键字、区分大小写;2、尽量见名知意,可以使用汉语拼音;3、变量必须先定义后使用。,变量赋值:将数据存入变量对应的存储空间。 格式:变量名=表达式;/将表达式的值存入变量。,分清几个概念 变量名、变量的存储空间(地址)、变量的值,由各种运算符和括号把常量、变量、函数等连接起来的,具有实际意义并满足语法规则的式子,表达式中使用变量名来引用相应变量的值,变量初始化 定义变量的同时给变量设置初始值。,两种方式: 1、使用赋值运算符“=”,如int age=20; 2、使用小括号,如int age(20),int a(9), xx(90);,变量的随机值:定义变量时,只是根据变量的类型分配了存储空间,并没有给该空间指定一个特定的值。该存储空间原来有什么值还是什么值,即是以前遗留的值,是随机的,是一个我们不知道的无效值,使用此值运算是无意义的。,例:2-4,2-5,2-6,混合运算与类型转换,表达式中参与运算的变量和常量一般具有相同的数据类型,不需要类型转换,不同数据类型运算时才要进行类型转换。,(1)、自动转换:不同数据类型的变量与常量在表达式中混合使用时,它们最终将自动转换成同一种数据类型。,、转换原则:由“较低级”的类型向“较高级”的类型转换。各种类型的高低顺序为:见图2-2。其中int型最低, double 型最高,short和char型会自动转换为int型,float型会自动转换为double型。,、注意:转换不会造成精度丢失;转换时按运算顺序进行,依次在参与运算的两个操作数之间进行转换,转换到这两个操作数中相对较高级类型。,如:double x=1.5; y=x+3/2; 则y 的值为多少?,、赋值转换:赋值号两边的类型不同时,系统也会进行自动类型转换,这时赋值号右边的表达式类型被转换为赋值号左边变量的数据类型。,赋值转换有可能造成精度丢失! 如:double x=3.141555; int y; y=x; 这时y的值是3。,例:2-8,(2) 、强制类型转换:用户根据需要将表达式的值强制转换为指定类型。,格式:(类型)表达式 或 类型(表达式) 其中后一种是C+新增格式。,注意:有可能造成精度损失!无论是自动的还是强制的类型转换,都只是为当次运算的需要而进行的,都不会改变变量定义时的数据类型。,例:2-9,(1)、使用格式:变量名=表达式,是将右边表达式的值存入左边变量的存储单元。,(2)、“=”左边必须是变量,不能是表达式或常量(常量初始化除外)。,(3)、赋值运算符具有较低(逗号运算符最低)的运算优先级。如x=9+34。,(5)、赋值运算符两边的类型不一至时,将表达式值的类型自动转换为变量的类型。如:char ch=A; ch=97;,(4)、赋值运算的结合方向是从右到左,先计算赋值号右边的值,再给左边的变量。比如:a=b=c=d+9,运算符,1、赋值运算符:“=”,(6)、赋值表达式:用“=”将变量与表达式连接起来的式子,一般形式:变量=表达式。首先计算表达式右边的值,再将计算结果赋给“=”左边的变量,赋值表达式的值就是赋值后左边变量的值。,(7)、复合赋值运算符:+=,-=, *=, /=, %=, =, &=, |=, = 复合赋值运算符的结合方向都是从右到左。,2、算术运算符,1、设变量a为3位整数,则其百位可表示为 ,十位可表示为 ,个位可表示为 ;,2、若有定义:char

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论