76-2-1第计算机程序计-2章 基本数据类型与表达式(zpyang).ppt_第1页
76-2-1第计算机程序计-2章 基本数据类型与表达式(zpyang).ppt_第2页
76-2-1第计算机程序计-2章 基本数据类型与表达式(zpyang).ppt_第3页
76-2-1第计算机程序计-2章 基本数据类型与表达式(zpyang).ppt_第4页
76-2-1第计算机程序计-2章 基本数据类型与表达式(zpyang).ppt_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

第2章基本数据类型与表达式教师:杨振平E-mail:zpyang,计算机程序设计,2011-2012学年第2学期,C+,1,主要内容,2.1数据类型2.2常量2.3变量2.4运算符与表达式2.5表达式的运算顺序2.6不同数据类型之间的混合运算,2,2.1数据类型,+中的数据分为:常量和变量。常量:253.14+“Hello,World”无需预先说明,可直接使用;变量:inta,b,c,max;doublesum,Gse;必须先说明,后使用(给出类型、名字)。计算机中不同类型数据,有不同的存储格式、有不同的值域范围、有不同的操作运算。,3,图2.1C+的数据类型,4,基本数据类型,数据类型类型说明符占用字节字符型char1个短整数short2个整型int4个长整形long4个浮点型float4个双精度型double8个布尔型bool1个,数据在计算机中采用二进制形式存放,5,数据的存储格式,字符型数据:使用一个字节,存放一个ASCII字符,示意图如下:,ASCII的范围:0127一个字符数据可以当作一个整数使用,7,0,0,1,0,1,0,0,0,0,A字符ASCII为65,6,#includeusingnamespacestd;intmain()charch;for(inti=0;i128;i+)ch=char(i);coutchti=,=6xy(a+b)=c表示整型数n能够被2整除(n%2)=0关系表达式常用于表示简单条件,运算结果为布尔型值。,19,三.逻辑运算符和逻辑表达式,逻辑表达式:用逻辑运算符连接多个简单条件,表达“复合”条件。优先级:!高于for(inti=1;i(32-i),27,28,2.5表达式中各运算符的运算顺序,29,2.6不同类型数据之间的混合运算,1级别低的类型转换为级别高的类型。各类型按级别由低到高的顺序:char,int,unsigned,long,unsignedlong,float,double。如:1/3+1.0/32可以使用强制类型转换。inti1=5,i2=2;doubled1;d1=(double)i1/i2;等价于d1=double(i1)/i2;,30,例2-2根据三边长求三角形面积,利用海伦公式计算:,#include#include/数学库头文件usingnamespacestd;intmain(),变量定义提示信息:请输入三个边长输入边长值按海伦公式计算面积输出结果,doublea,b,c,s,area;,coutabc;,s=(a+b+c)/2;,area=sqrt(s*(s-a)*(s-b)*(s-c);,coutarea=areaf;c=5.0/9.0*(f-32);cout对应于华氏温度f的摄氏温度为cendl;return0;,注意:表达式c=5.0/9.0*(f-32)不能写成c=5/9*(f-32),变量定义提示信息输入F按公式计算输出结果,输入一个华氏温度,计算并输出对应的摄氏温度,35,例2-5:输入一个4位无符号整数,反序输出该数。,算法1:分离出整数n的每位数字,将其形成一个新的反序整数输出。unsignedintn,c1,c2,c3,c4;c1=n%10;c2=n/10%10;c3=n/100%10;c4=n/1000;n=c1*1000+c2*100+c3*10+c4,/定义整数类型,/分离个位数,/分离十位数,/分离百位数,/分离千位数,/新的数,coutn;或coutc1c2c3c4n;while(n!=0)m=m*10+n%10;n=n/10;coutm=A,41,例2-7:找零钱问题,假定有伍角、壹角、伍分、贰分和壹分共五种硬币,在给顾客找硬币时,一般都会尽可能的选用硬币个数最少的方法。例如,当要给某顾客找七角二分钱时,会给他一个伍角,2个壹角和1个贰分的硬币。请编写一个程序,输入的是要找给顾客的零钱(以分为单位),输出的是应该找回的各种硬币数目,并保证找回的硬币数最少。,42,算法:,intchange;/定义存放零钱的变量intwj,yj,wf,ef,yf;/定义存放5种硬币个数的变量输入changewj=change/50;change%=50;/5角硬币数yj=change/10;change%=10;/1角硬币数wf=change/5;change%=5;/5分硬币数ef=change/2;/2分硬币数yf=change%2;/1分硬币数输出:wj,yj,wf,ef,yf,43,程序代码,#includeusingnamespacestd;intmain()intchange;/存放零钱的变量intwj,yj,wf,ef,yf;/存放5种硬币个数的变量cinchange;wj=change/50;change%=50;/5角硬币数yj=change/10;change%=10;/1角硬币数wf=change/5;change%=5;/5分硬币数ef=change/2;/2分硬币数yf=change%2;/1分硬币数,44,cout找给顾客的伍角硬币个数为:wjendl;cout找给顾客的壹角硬币个数为:yjendl;cout找给顾客的伍分硬币个数为:wfendl;cout找给顾客的贰分硬币个数为:efendl;cout找给顾客的壹分硬币个数为:yfendl;return0;,45,第2章作业与实验p43,上机实验题:1,2,3,5(p43)补充题:1.输入一个5位正整数(每位数字非0),按要求完成:(1)分别取出高端2位数、低端2位数以及中间1位数,并按中、低、高次序输出。(2)以中间数作为最高位(万位

温馨提示

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

评论

0/150

提交评论