编程基础知识.ppt_第1页
编程基础知识.ppt_第2页
编程基础知识.ppt_第3页
编程基础知识.ppt_第4页
编程基础知识.ppt_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、C+简单程序设计,复习内容,C+语言程序设计,2,本章主要内容,运算符与表达式 算法的基本控制结构 结构体,算术运算符与算术表达式,基本算术运算符 + - * /(若整数相除,结果取整) %(取余,操作数为整数) 优先级与结合性 先乘除,后加减,同级自左至右 +, -(自增、自减) 例:i+; -j;,Page 3,基本数据类型和表达式,赋值运算符和赋值表达式 简单的赋值运算符=,举例n = n + 5 表达式的类型等号左边对象的类型 表达式的值等号左边对象被赋值后的值,Page 4,基本数据类型和表达式,5,赋值运算符和赋值表达式 复合的赋值运算符,复合运算符:+=, -=, *=, /=,

2、 %=, 例a += 3 等价于 a = a + 3x *= y + 8 等价于 x = x * (y + 8),基本数据类型和表达式,6,逗号运算和逗号表达式,格式 表达式1,表达式2 求解顺序及结果 先求解1,再求解2,最终结果为表达式2的值 例 a = 3 * 5 , a * 4 最终结果为60,Page 6,基本数据类型和表达式,7,关系运算与关系表达式,关系运算是比较简单的一种逻辑运算,优先次序为: = = != 优先级相同(高) 优先级相同(低) 关系表达式是一种最简单的逻辑表达式 其结果类型为 bool,值只能为 true 或 false。 例如:a b,c = a + b,x

3、+ y = 3,基本数据类型和表达式,8,逻辑运算与逻辑表达式,逻辑运算符 !(非) ,基本数据类型和表达式,10,sizeof 运算符,语法形式sizeof (类型名)或 sizeof 表达式 结果值:“类型名”所指定的类型或“表达式”的结果类型所占的字节数。 例: sizeof(short) sizeof x,基本数据类型和表达式,基本输入输出,输入/输出格式定义如下 : 向标准输出设备(显示器)输出 例:int x; cout x;,cin变量名; cout变量名或常量;,开发环境,例1-2 创建一个控制台应用程序,当其运行时在屏幕上显示“Hello, World!”。,#include

4、 void main() coutHello World!endl; /在屏幕上输出“Hello World!,14,顺序结构 分支结构 循环结构,算法的基本控制结构,15,如何解决多分支问题?,例 输入两个整数,比较两个数的大小。,算法的基本控制结构,#include using namespace std; int main() int x,y; coutxy; if (x!=y) if (xy) coutyendl; else coutxyendl; else coutx=yendl; ,16,运行结果1: Enter x and y:5 8 xy,17,18,一般形式 switch (

5、表达式) case 常量表达式 1:语句1 case 常量表达式 2:语句2 case 常量表达式 n:语句n default : 语句n+1 ,switch 语句,执行顺序 以case中的常量表达式值为入口标号,由此开始顺序执行。因此,每个case分支最后应该加break语句。,19,特殊的多分支结构,例 输入一个06的整数,转换成星期输出。,#include using namespace std; int main() int day; cin day; switch (day) case 0: cout Sunday endl; break; case 1: cout Monday e

6、ndl; break; case 2: cout Tuesday endl; break; case 3: cout Wednesday endl; break; case 4: cout Thursday endl; break; case 5: cout Friday endl; break; case 6: cout Saturday endl; break; default: cout Day out of range Sunday . Saturday endl; break; return 0; ,21,while 语句,形式 while (表达式) 语句,执行顺序 先判断表达式的

7、值,若为 true 时,执行语句。,算法的基本控制结构,22,do-while 语句,一般形式 do 语句 while (表达式),执行顺序 先执行循环体语句,后判断条件。表达式为 true 时,继续执行循环体 与while语句的比较: while 语句执行顺序 先判断表达式的值,为true时,再执行语句,算法的基本控制结构,对比下列程序:,程序1: #include using namespace std; int main() int i, sum = 0; cin i; while (i = 10) sum += i; i+; cout sum= sum endl; return 0;

8、,算法的基本控制结构,程序2: #include using namespace std; int main() int i, sum = 0; cin i; do sum += i; i+; while (i = 10); cout sum= sum endl; return 0; ,23,24,for 语句,for (初始语句;表达式1;表达式2) 语句,算法的基本控制结构,例: for(i=1;i=10;i+) cout*; for(i=1;i=10;i+) cout*; cout$;,25,break 和 continue 语句,break语句 使程序从循环体和switch语句内跳出,

9、继续执行逻辑上的下一条语句。不宜用在别处。 continue 语句 结束本次循环,接着判断是否执行下一次循环。,算法的基本控制结构,26,关于break 和 continue 语句的例子,#include using namespace std; void main() int x=1; for(int i=0;i6;i+) if(i%2) continue; if(i%3) break; x+; couti=i;x=xendl; ,27,函数的声明,函数是面向对象程序设计中,对功能的抽象 函数声明的语法形式 类型标识符 函数名(形式参数表) 语句序列 ,函数的声明与使用,是被初始化的内部变量

10、,寿命和可见性仅限于函数内部,若无返回值,写void,28,例 编写一个求x的n次方的函数,#include double power(double x, int n); int main() cout5 to the power 2 is power(5,2)endl; double power(double x, int n) double val=1.0; while (n-) val=val*x; return(val); ,函数的声明与使用,29,运行结果: 5 to the power 2 is 25,例 编写一个求x的n次方的函数,函数的声明与使用,30,结构体结构的声明,结构的

11、概念 结构是由不同数据类型的数据组成的集合体。 声明结构类型 struct 结构名 数据类型 成员名 1; 数据类型 成员名 2; : 数据类型 成员名 n; ;,自定义数据类型,31,结构体结构的声明,举例: struct student /学生信息结构体 int num; /学号 char name20; /姓名 char gender; /性别 int age; /年龄 float score; /成绩 char addr30; /住址 ;,自定义数据类型,32,结构体结构变量说明,变量说明形式 结构名 结构变量名; 注意: 结构变量的存储类型概念、它的寿命、可见性及使用范围与普通变量完

12、全一致。 结构变量说明在结构类型声明之后,二者也可同时进行。 结构变量占内存大小可用 sizeof 运算求出: sizeof(运算量),自定义数据类型,33,结构体结构变量的初始化和使用,初始化 说明结构变量的同时可以直接设置初值。 使用 结构体成员的引用形式:结构变量名.成员名,自定义数据类型,34,例,结构体变量的初始化和使用 #include #include using namespace std; struct student /学生信息结构体 int num;/学号 char name20;/姓名 char gender;/性别 int age;/年龄 stu=97001,Lin Lin,F,19; int main() coutsetw(7)stu.numsetw(20) setw(3)stu.sexsetw(3)stu.age; ,自定义数据类型,运行结果: 97001 Lin Lin F 19,作业,求表达式1-2+3-4+99-1

温馨提示

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

评论

0/150

提交评论