C语言程序设计课件第02章简单程序设计.ppt_第1页
C语言程序设计课件第02章简单程序设计.ppt_第2页
C语言程序设计课件第02章简单程序设计.ppt_第3页
C语言程序设计课件第02章简单程序设计.ppt_第4页
C语言程序设计课件第02章简单程序设计.ppt_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

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

文档简介

第二章C+简单程序设计,C+语言程序设计,2,本章主要内容,C+语言概述基本数据类型和表达式数据的输入与输出算法的基本控制结构自定义数据类型,3,C+语言的产生,C+是从C语言发展演变而来的,首先是一个更好的C引入了类的机制,最初的C+被称为“带类的C”1983年正式取名为C+从1989年开始C+语言的标准化工作于1994年制定了ANSIC+标准草案于1998年11月被国际标准化组织(ISO)批准为国际标准,成为目前的C+,C+语言概述,4,C+的特点,全面兼容C它保持了C的简洁、高效和接近汇编语言等特点对C的类型系统进行了改革和扩充C+也支持面向过程的程序设计,不是一个纯正的面向对象的语言支持面向对象的方法,C+语言概述,5,C+程序实例例2-1,/2_1.cpp#includeusingnamespacestd;voidmain()coutHello!n;cout=!=逻辑运算符:!voidmain()floatf=12.456789f;coutsetprecision(3)fendl;,运行结果:12.5,coutfixedsetprecision(3)fendl;,运行结果:12.457,21,简单的输入、输出,数据的输入与输出,三、简单的I/O格式控制(iomanip),注:使用setprecision(n)可控制输出流显示浮点数的数字个数。C+默认的流输出数值有效位是6。如果setprecision(n)与setiosflags(ios:fixed)合用,可以控制小数点右边的数字个数。如果与setiosflags(ios:scientific)合用,可以控制指数表示法的小数位数。如果与setiosflags(ios:left)合用,可以使输出的数据在域内左对齐。,22,顺序结构分支结构循环结构,算法的基本控制结构,算法的基本控制结构,23,P39例2-2P40例2-3P42例2-4P43例2-5P44例2-6P46例2-7P47例2-8P49例2-9P50例2-10,算法的基本控制结构,24,typedef语句,为一个已有的数据类型另外命名语法形式typedef已有类型名新类型名表;例如typedefdoublearea,volume;typedefintnatural;naturali1,i2;areaa;volumev;,自定义数据类型,25,枚举类型enum,只要将需要的值一一列举出来,便构成了一个枚举类型。枚举类型的声明形式如下:enum枚举类型名值列表;例如:enumweekdaysun,mon,tue,wed,thu,fri,sat;,自定义数据类型,26,枚举类型enum,枚举类型应用说明:对枚举元素按常量处理,不能对它们赋值。例如,不能写:sun=0;枚举元素具有默认值,它们依次为:0,1,2,.。也可以在声明时另行指定枚举元素的值,如:enumweekdaysun=7,mon=1,tue,wed,thu,fri,sat;枚举值可以进行关系运算。整数值不能直接赋给枚举变量,如需要将整数赋值给枚举变量,应进行强制类型转换。,自定义数据类型,27,例2-11,设某次体育比赛的结果有四种可能:胜(win)、负(lose)、平局(tie)、比赛取消(cancel),编写程序顺序输出这四种情况。分析:由于比赛结果只有四种可能,所以可以声明一个枚举类型,声明一个枚举类型的变量来存放比赛结果。,自定义数据类型,#includeusingnamespacestd;enumgame_resultWIN,LOSE,TIE,CANCEL;voidmain()game_resultresult;enumgame_resultomit=CANCEL;intcount;for(count=WIN;count=CANCEL;count+)result=(game_result)count;if(result=omit)coutThegamewascancelledn;elsecoutThegamewasplayed;if(result=WIN)coutandwewon!;if(result=LOSE)coutandwelost.;coutn;return0;,28,运行结果Thegamewasplayedandwewon!Thegamewasplayedandwelost.ThegamewasplayedThegamewascancelled,29,30,结构体结构的声明,结构的概念结构体是由不同数据类型的数据组成的集合体。声明结构类型struct结构名数据类型成员名1;数据类型成员名2;:数据类型成员名n;;,自定义数据类型,31,结构体结构的声明,举例:structstudent/学生信息结构体intnum;/学号charname20;/姓名chargender;/性别intage;/年龄floatscore;/成绩charaddr30;/住址,自定义数据类型,32,结构体结构变量说明,变量说明形式结构名结构变量名;注意:结构变量的存储类型概念、它的寿命、可见性及使用范围与普通变量完全一致。结构变量说明在结构类型声明之后,二者也可同时进行。结构变量占内存大小可用sizeof运算求出:sizeof(运算量),自定义数据类型,33,结构体结构变量的初始化和使用,初始化说明结构变量的同时可以直接设置初值。使用结构体成员的引用形式:结构变量名.成员名,自定义数据类型,34,例2-12,结构体变量的初始化和使用#include#includeusingnamespacestd;structstudent/学生信息结构体intnum;/学号charname20;/姓名chargender;/性别intage;/年龄stu=97001,LinLin,F,19;intmain()coutsetw(7)stu.numsetw(20)setw(3)stu.sexsetw(3)stu.age;,自定义数据类型,运行结果:97001LinLinF19,35,联合体,声明形式:union联合名数据类型成员名1;数据类型成员名2;:数据类型成员名n;;联合体类型变量说明的语法形式联合名联合变量名;引用形式:联合名.成员名,自定义数据类型,36,例:unionuareacharc_data;shorts_data;longl_data;,联合体,自定义数据类型,37,无名联合,无名联合没有标记名,只是声明一个成员项的集合,这些成员项具有相同的内存地址,可以由成员项的名字直接访问。例:unioninti;floatf;在程序中可以这样使用:i

温馨提示

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

评论

0/150

提交评论