版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据类型、运算符与表达 C语言的数据类 常量与变 常量和符号常 变 整型数 整型常量的表示方 整型变 实型数 实型常量的表示方 实型变 实型常数的类 字符型数 字符常 转义字 字符变 字符数据在内存中的形式及使用方 字符串常 符号常 变量赋初 各类数值型数据之间的混合运 算术运算符和算术表达 C运算符简 算术运算符和算术表达 赋值运算符和赋值表达 逗号运算符和逗号表达 小 C的数据类 基本类型的分类及特 常量后 常量类 数据类型转 运算符优先级和结合 表达 数据类型、运算符与表达C语言的数据类在第一章中,已经看到程序中使用的各种变量都应预先加以定义,即先定义,后··类·,在本章中只介绍数据类型的说明。其它说明在以后各章中陆续介绍。所谓数据类,数据类基数据类实型(浮点型双精度枚举类构造类共用体类指针类空类C一定的数据类型的,应在函数定义及函数说明中给以说明,例如在例题中给出的max函数定义中,函数头为:intmax(inta,intb);其中“int”类型说明符即表示该函数的返回值为整型量。又如在例题中,使用了库函数sin,由于系统规定其函数返回值为双精s=sin(x);中,ssin函数的s说明为双精度浮点型。但是,也有一类函数,调用,,常量与变枚举变量。在程序中,常量是可以不经说明而直接的,而变量则必须先定义后使用。常量和符号常ab#define#definePRICE30{intnum,total;total=num*PRICE;}变其值可以改变的量称为变量一个变量应该有一个名字在内存中占据一定的单元。整型数
33单元整型常量的表示方0230)、23D含有非十进制数码)在程序中是根据前缀来区分各种进制数的因此在书写常数时前缀弄错造0~7。八进制数通常是无符号数。无前缀0X2A(42)、0XA0160)、0XFFFF65535);5A0X)、0X3H含有非十六进制数码)整型常数的后缀:在16位字长的机器上,基本整型的长度也为16位,因此表示的数的范围也是有限定的。十进制无符号整常数的范围为0~65535,有符号数为-32768~。八进制无符号数的表示范围为~0177777。十六进制无符号数的表示范围为0X0~0XFFFF或0x0~0xFFFF。如果使用的数超过了上述范围,就158L158)、358000L012L10)、077L63)、0200000L65536);0X15L(21)、0XA5L(165)、0X10000L(65536)。158L158158L节的空间。因此在运算和输出格式上要予以注意,避免出错。”或“u358u,0x38Au,235Lu0XA5Lu表示十六进制无符号长A5165。整型变i:inti; 0000000000001010求-10000000000000000000101011111111111101011,得-101111111111110110整型变量的int2shortintshortlongintlong4unsignedint或unsignedunsignedshortunsignedlong01111111111111111111111111111111TurboC-2unsigned2short-2unsignedshort2long-2147483648~2147483647即-231~(231-4unsigned413int00unsignedshortintunsignedlongint整型变量的 inta,b,c;(a,b,c为整型变量)longx,y;x,y为长整型变量unsignedp,q;(p,q为无符号整型变量){inta,b,c,d;unsignedu;}整型数据的{inta,b;}01111111111111111000000000000000longx,y;inta,b,c,d;}c,d被定义为基本整型,因此最后结果为基本整型。本例说明,不实型数实型常量的表示方实型也称为浮点型。实型常量也称为实数或者浮点数。在C语言中,实数只采用十进0~9和小数点组成。aEn(a为十进制数,n为十进制整数)其值为a*10n。E5(3.7E-23.7*10-0.5E7(-2.8E-2等于-2.8*10-345无小数点E7E之前无数字-5无阶码标志53.-E3负号位置不对 printf("%f\nprintf("%f\n",356);printf("%f\n",356f);}实型变实型数据在内存中的存+1数 指实型变量的实型变量分为:单精度(float型、双精度(double型)和长双精度(longdouble型)TurboC4(32位3.4E-38~3.4E+38,1.7E+30816比特数(字节数longfloatx,y;(x,y为单精度实型量)doublea,b,c;a,b,c为双精度实型量)实型数据的由于实型变量是由有限的单元组成的因此能提供的有效数字总是有限的如下例{floata,b;}注意:1.0/3*31{floata;doubleb;}bTurboC规定小数后最多保留六位,其余部实型常数的类double字符型数字符常字符常量只能用单引号括起来,不能引号或其它括号如'5'5是不同的。'5'转义字常用的转义字符及其含ASCII98反斜线符71~31~2广义地讲,C语言字符集中的任何一个字符均可用转义字符来表示。表中的\ddd和\xhh正是为此而ddd和hh分别为八进制和十六进制的ASCII代码如\101表示字母"A",\102表示字母"B",\134表示反斜线,\XOA{inta=5;b=6; }字符变字符变量用来字符常量,即单个字符字符变量的类型说明符是charchar字符数据在内存中的形式及使用方a,b1201210111100111100001111001所以也可以把它们看成是整型量。C语言允许对整型变量赋以字符值,也允许对字符{chara,b;}{chara,b;}本例中,a,b被说明为字符变量并赋予字符值,C语言允许字符变量参与数值运算,字符串常字符串常量是由一对双引号括起的字符序列。例如:"CHINA",“Cprogram”"$12.5"BASIC语言不同的。但是可以用1。增加的一个字节中存放字符"\0"(ASCII0)。这是字符串结束的标志。"Cprogram"Cprogramaaa变量赋初在程序中常常需要对变量赋初值,以便使用变量。语言程序中可有多种方法为变量提在变量定义中赋初值的一般形式为:1=12=2,……;inta=3;intfloatx=3.2,y=3f,z=0.75;charch1='K',ch2='P';a=b=c=5{inta=3,b,c=5;}各类数值型数据之间的混合运int型和long型运算时,intlong型后再进行运算。float单精度量运算的表达式,也double型,再作运算。charshortint floatPI=3.14159;ints,r=5;}doubles为整型,故赋值结果仍为整型,舍去了小数部分。 (表达式(float) a x+y的结果转换为整型类型说明符和表达式都必须加括号(单个变量可以不加括号),如把(int)(x+y)(int)x+yxintyfloatf=5.75;}改变。因此,(int)f的值为5(删去了小数)f5.75。算术运算符和算术表达C运算符简关系运算符:用于比较运算。包括大于(>)、小于(<)、等于(==)(>=)、小于等条件运算符:这是一个三目运算符,用于条件求值(?:)逗号运算符:用于把若干表达式组一个表达式(,)求字节数运算符:用于计算数据类型所占的字节数(sizeof)算术运算符和算术表达基本的算术加法运算符“+运算,如-x,-5等具有左结合性。*除法运算符“/}本例中,20/7,-20/720.0/7和-20.0/7由于有实数}10031算术表达式和运算符的优先级和结算术表达式:用算术运算符和括号将运算对象(也称操作数)C语(x+r)*8-。y应先与“-x-y运算,然后再执行+z的运算。这种自左至右的结合性运算符是赋值运算符。如x=y=z,由于“=”的右结合性,应先执行y=z再执行x=(y=z)。(类型说明符)(表达式(float) a x+y自增、自减++1运算符记为“--1。11 i1 i自减1后再参与其它运算。 i参与运算后,i的值再自增1。 i参与运算后,i的值再自减1。i++i--inti=8;}i的初值为8,第2i1后输出故为9;第3行减1后输出故为8;第4行输出i为8之后再加1(9);第5行输出i9之后再减1(8);第6行输出-8之后再加1(9),7行输出-91(8)。inti=5,j=5,p,q;}这个程序中,对P=(i++)+(i++)+(i++)应理解为三个i相加,故P值为15。然后i再自增13i8q的值则不然,q=(++j)+(++j)+(++j)q先自增1,再参与运算,由于q1三次后8,三个8相加的和为24,j的最后值仍8。赋值运算符和赋值表达赋值运算简单赋值运算符记为“==
C中,把“=都是赋值语句,面各例中已大量使用过了类型转0)。0量。inta,b=322;floatx,y=8.88;charc1='k',c2;}本例表明了上述赋值运算中类型转换的规则。ay8.88后只取整8。xb322c1a变为整型,bc2后取其低八位成为字符型(b0100001066ASCIIB)。复合的赋值在赋值符“”之前加上其它二目运算符可构
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 部编版四年级语文上册第6课《夜间飞行的秘密》精美课件
- 小尾寒羊营养需要量-地方标准草案报批稿
- 二零二四年度航空器材采购租赁合同3篇
- 我的真理观-马克思公开课
- 环状外阴炎病因介绍
- 【大学课件】 企业集团财务战略与管理控制体系
- 《专利英语翻译》课件
- (麦当劳餐饮运营管理资料)更新商业-麦当劳洗手间检查表
- (高考英语作文炼句)第6篇译文老师笔记
- 热力管道施工组织设计
- 施工现场管理人员安全培训记录
- 朱文峰《中医诊断学》讲稿
- 详解 强基计划
- 2023智能电厂设计规范
- 最基本医院员工工资表工资条模板
- 运用PDCA循环提高全院胰岛素存放合格率品管圈QCC成果汇报
- 2023年新课标全国Ⅱ卷 真题语文文学类文本阅读《社戏》解析课件
- 班杜拉的社会学习理论
- 信用管理师考试真题模拟汇编(共681题)
- 产品质量监督约谈记录表
- 泌尿外科疾病诊疗规范诊疗指南诊疗常规2022版
评论
0/150
提交评论