《简单C程序设计》PPT课件.ppt

上传人:za****8 文档编号:14468488 上传时间:2020-07-21 格式:PPT 页数:42 大小:311KB
收藏 版权申诉 举报 下载
《简单C程序设计》PPT课件.ppt_第1页
第1页 / 共42页
《简单C程序设计》PPT课件.ppt_第2页
第2页 / 共42页
《简单C程序设计》PPT课件.ppt_第3页
第3页 / 共42页
资源描述:

《《简单C程序设计》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《简单C程序设计》PPT课件.ppt(42页珍藏版)》请在装配图网上搜索。

1、第二章 C+简单程序设计,C+语言程序设计,2,本章主要内容,C+语言概述 数据的输入与输出 自定义数据类型,3,C+语言的产生,C+是从C语言发展演变而来的,首先是一个更好的C 引入了类的机制,最初的C+被称为“带类的C” 1983年正式取名为C+ 从1989年开始C+语言的标准化工作 于1994年制定了ANSI C+标准草案 于1998年11月被国际标准化组织(ISO)批准为国际标准,成为目前的C+,C+语言概述,4,C+的特点,全面兼容C 它保持了C的简洁、高效和接近汇编语言等特点 对C的类型系统进行了改革和扩充 C+也支持面向过程的程序设计,不是一个纯正的面向对象的语言 支持面向对象的

2、方法,C+语言概述,5,C+程序实例例2-1,/2_1.cpp #include using namespace std; void main(void) coutHello!n; coutWelcome to c+!n; 运行结果: Hello! Welcome to c+!,C+语言概述,6,字符数据的使用方法 字符数据和整型数据之间可以运算。 字符数据与整型数据可以互相赋值。 字符串常量 例:CHINA a a 所以:char c; c=a;,Page 6,数据类型 字符型数据,基本数据类型和表达式,7,数据类型 变量初始化,例: int a=3; double f=3.56; char

3、 c=a; int c(5);,Page 7,基本数据类型和表达式,8,数据类型 混合运算时的类型转换,不同类型数据进行混合运算时,C+编译器会自动进行类型转换。 为了避免不同的数据类型在运算中出现类型问题,应尽量使用同种类型数据。 可以采用强制类型转换: 例如:float c;int a,b;c=float(a)/float(b); 或 c= (float)a/(float)b;,基本数据类型和表达式,9,赋值运算符和赋值表达式 简单的赋值运算符=,举例n=n+5 表达式的类型等号左边对象的类型 表达式的值等号左边对象被赋值后的值,Page 9,基本数据类型和表达式,10,赋值运算符和赋值表

4、达式 赋值表达式举例,a=5表达式值为5 a=b=c=5表达式值为5,a,b,c均为5 a=5+(c=6)表达式值为11,a为11,c为6 a=(b=4)+(c=6) 表达式值为10,a为10,b为4,c为6 a=(b=10)/(c=2) 表达式值为5,a为5,b为10,c为2 a+=a-=a*a 相当于 a=a+(a=a-a*a),Page 10,基本数据类型和表达式,11,逗号运算和逗号表达式,格式 表达式1,表达式2 求解顺序及结果 先求解1,再求解2,最终结果为表达式2的值 例 a=3*5 , a*4 最终结果为60,Page 11,基本数据类型和表达式,12,sizeof 运算符,语

5、法形式sizeof (类型名)或 sizeof (表达式) 结果值:“类型名”所指定的类型或“表达式”的结果类型所占的字节数。 例: sizeof(short) sizeof(x),基本数据类型和表达式,13,位运算按位与(,基本数据类型和表达式,15,位运算按位异或(),运算规则 两个操作数进行异或:若对应位相同,则结果该位为 0,若对应位不同,则结果该位为 1, 举例:计算 071052 071: 0 0 1 1 1 0 0 1 052: () 0 0 1 0 1 0 1 0 071052 : 0 0 0 1 0 0 1 1,基本数据类型和表达式,16,位运算按位异或(),用途: 使特定位

6、翻转(与0异或保持原值,与1异或取反) 例如:要使 01111010 低四位翻转: 0 1 1 1 1 0 1 0 ()0 0 0 0 1 1 1 1 0 1 1 1 0 1 0 1,基本数据类型和表达式,17,位运算取反(),单目运算符,对一个二进制数按位取反。 例: 025:0000000000010101 025:1111111111101010,基本数据类型和表达式,18,位运算移位,左移运算() 右移后,低位:舍弃 高位:无符号数:补0 有符号数:补“符号位”,基本数据类型和表达式,19,混合运算时数据类型的转换 强制类型转换,语法形式: 类型说明符(表达式) 或 (类型说明符)表达

7、式 强制类型转换的作用是将表达式的结果类型转换为类型说明符所指定的类型。,基本数据类型和表达式,20,简单的输入、输出,C+就数据在设备间传输的过程抽象为“流”。从流中获取数据成为提取操作,向流中添加数据的操作称为插入操作。数据的输出与输出操作通过I/O流实现, cin和cout是预先定义的流对象,在头文件iostream中定义的。 向标准输出设备(显示器)输出 例:int x; coutx name;,21,用cout进行输出,格式: cout 表达式1表达式2 功能:由左向右逐个计算表达式的值,将其插入到输出流cout中。 cout 必须与输出运算符一起使用,每个后跟一个表达式,运算符的结

8、合方向是从左向右,所以各个表达式的值按从左到右的顺序插入到输出流中。,22,for ( k = 1; k =3; k+) cout “k=“ kendl; endl是C+输出流的操作符,在头文件iostream中定义,代表让光标换行。在C+中也可以用”n”控制光标换行。所以输出语句也可写成: cout “k=“ k“n” ;,23,用cin进行输入,格式: cin变量1 变量2 是C+的提取运算符,表示从标准输入设备取得数据,赋予其后的变量。 从键盘输入数值数据时,两个数据之间用空格分隔或用回车分隔。,24,int a; float b cinab; 从键盘输入 20 32.45 ,25,ci

9、n和cout的使用,#include using namespace std; int main( ) coutname; cinage; coutyour name is nameendl; coutyour age is ageendl; return 0; ,26,typedef语句,为一个已有的数据类型另外命名 语法形式 typedef 已有类型名 新类型名表; 例如 typedef double area,volume; typedef int natural; natural i1,i2; area a; volume v;,自定义数据类型,27,枚举类型enum,只要将需要的变量

10、值一一列举出来,便构成了一个枚举类型。 枚举类型的声明形式如下: enum 枚举类型名 变量值列表; 例如: enum weekday sun,mon,tue,wed,thu,fri,sat;,自定义数据类型,28,枚举类型enum,枚举类型应用说明: 对枚举元素按常量处理,不能对它们赋值。例如,不能写:sun=0; 枚举元素具有缺省值,它们依次为: 0,1,2,.。 也可以在声明时另行指定枚举元素的值,如: enum weekday sun=7,mon=1,tue,wed,thu,fri,sat; 枚举值可以进行关系运算。 整数值不能直接赋给枚举变量,如需要将整数赋值给枚举变量,应进行强制类

11、型转换。,自定义数据类型,29,例2-11,设某次体育比赛的结果有四种可能:胜(win)、负(lose)、平局(tie)、比赛取消(cancel),编写程序顺序输出这四种情况。 分析:由于比赛结果只有四种可能,所以可以声明一个枚举类型,声明一个枚举类型的变量来存放比赛结果。,自定义数据类型,#include using namespace std; enum game_result WIN, LOSE, TIE, CANCEL; int main() game_result result; enum game_result omit = CANCEL; int count; for (coun

12、t = WIN ; count = CANCEL ; count+) result = (game_result)count; if (result = omit) cout The game was cancelledn; else cout The game was played ; if (result = WIN) cout and we won!; if (result = LOSE) cout and we lost.; cout n; return 0; ,30,运行结果 The game was played and we won! The game was played an

13、d we lost. The game was played The game was cancelled,31,32,结构体结构的声明,结构的概念 结构是由不同数据类型的数据组成的集合体。 声明结构类型 struct 结构名 数据类型 成员名 1; 数据类型 成员名 2; : 数据类型 成员名 n; ;,自定义数据类型,33,结构体结构的声明,举例: struct student /学生信息结构体 int num; /学号 char name20; /姓名 char gender; /性别 int age; /年龄 float score; /成绩 char addr30; /住址 ,自定义

14、数据类型,34,结构体结构变量说明,变量说明形式 结构名 结构变量名; 注意: 结构变量的存储类型概念、它的寿命、可见性及使用范围与普通变量完全一致。 结构变量说明在结构类型声明之后,二者也可同时进行。 结构变量占内存大小可用 sizeof 运算求出: sizeof(运算量),自定义数据类型,35,结构体结构变量的初始化和使用,初始化 说明结构变量的同时可以直接设置初值。 使用 结构体成员的引用形式: 结构变量名.成员名,自定义数据类型,36,例2-12,结构体变量的初始化和使用 #include #include using namespace std; struct student /学生

15、信息结构体 int num; /学号 char name20; /姓名 char gender; /性别 int age; /年龄 stu=97001,Lin Lin,F,19; void main() coutsetw(7)stu.numsetw(20)stu.name setw(3)stu.sexsetw(3)stu.age; ,自定义数据类型,运行结果: 97001 Lin Lin F 19,37,const定义常变量,格式: const 类型 变量名 = 常数; 例:const float PI= 3.14159;,38,00F0,00F8,char * p ;,p对应的内存,cons

16、t常量定义,指针与常量,使用指针时会涉及到两个对象,指针本身和指针指向的对象。,00F0,*(p + 1) = * ; / p1 = *;,*,39,const与指针一起使用时,有三种组合方式: 指向常量的指针; 常指针; 指向常量的常指针。,指针与常量,const常量定义,40,指向常量的指针是指一个指向常量的指针变量。 如: char str = “Chen”; const char *name = str; 表示声明了一个指针变量name,它所指向的是一个字符串型常量。 name2=a; name=“zhang”;,const常量定义,41,常指针是指把指针本身定义为常量,而不是所指的对象,如: char str = “Chen”; char *const name= str; name2=a; name=“zhang”;,指向常量的常指针是指一个常指针,它本身的值不能改变,所指向的值也是一个常量。如: const char *const name=“chen”; 如上两句操作均出错。,const常量定义,42,const另一个一个重要用途是用来定义函数参数. int Max(const int * ptr); /求数组中元素的最大值 ,const常量定义,

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!