C大学基础教程第3章解析精品PPT课件
合集下载
精品-清华大学C语言课件 第3章02 描述算法
本讲大纲
描述算法
1.用自然语言描述 2. 用流程图描述 3.三种基本结构 4.绘制N-S流程图 5.用伪代码描述算法
实例3 任意输入三个数,求这三个数中的最大数 实例4 判断2000~2500年中的年份是否为闰年 实例5 用伪代码描述n!
用自然语言描述
所谓自然语言就是日常生活中的语言,它可以是汉语,英语,日语等,一般描述一些简单问题步 骤可以通俗简单易懂。下面通过具体实例来介绍自然语言。 【例3.1】 求正整数a和b的最大公约数。 第一步:输入a和b的值; 第二步:求a除以b的余数c; 第三步:若c等于0,则b为最大公约数,算法结束;否则执行第四步; 第四步:将b的值放在a中,将c的值放在b中; 第五步:重新执行第二步。
【例3.6】 从键盘中输入一个数n,求n!。 该程序流程图如图3.16所示。
图3.16 求n!
该程序的N-S流程图如图3.17所示。
输入一个数赋给变量n
Y s=1 n>0
Y i=1
i<=n
n>=0
N
N 输出 error
s=s*i i=i+1 输出s
图3.17 求n!的N用介于自然语言和计算机语言之间的文字和符号来描述算法。它采用某一程序设计语言 的基本语法,如操作指令可以结合自然语言来设计。而且,它不用符号,书写方便,没有固定的语法 和格式,具有很大的随意性,便于向程序过渡。 下面通过一个例子用伪代码描述算法。 【例3.7】 用伪代码描述两个正整数a和b最大公约数的算法。
图3.12 顺序结构 (2)选择结构的N-S流程图如图3.13所示。
图3.13 选择结构
(3)当型循环的N-S流程图如图3.14所示。 当P成立
图3.14 当型循环 (4)直到型循环的N-S流程图如图3.15所示。
描述算法
1.用自然语言描述 2. 用流程图描述 3.三种基本结构 4.绘制N-S流程图 5.用伪代码描述算法
实例3 任意输入三个数,求这三个数中的最大数 实例4 判断2000~2500年中的年份是否为闰年 实例5 用伪代码描述n!
用自然语言描述
所谓自然语言就是日常生活中的语言,它可以是汉语,英语,日语等,一般描述一些简单问题步 骤可以通俗简单易懂。下面通过具体实例来介绍自然语言。 【例3.1】 求正整数a和b的最大公约数。 第一步:输入a和b的值; 第二步:求a除以b的余数c; 第三步:若c等于0,则b为最大公约数,算法结束;否则执行第四步; 第四步:将b的值放在a中,将c的值放在b中; 第五步:重新执行第二步。
【例3.6】 从键盘中输入一个数n,求n!。 该程序流程图如图3.16所示。
图3.16 求n!
该程序的N-S流程图如图3.17所示。
输入一个数赋给变量n
Y s=1 n>0
Y i=1
i<=n
n>=0
N
N 输出 error
s=s*i i=i+1 输出s
图3.17 求n!的N用介于自然语言和计算机语言之间的文字和符号来描述算法。它采用某一程序设计语言 的基本语法,如操作指令可以结合自然语言来设计。而且,它不用符号,书写方便,没有固定的语法 和格式,具有很大的随意性,便于向程序过渡。 下面通过一个例子用伪代码描述算法。 【例3.7】 用伪代码描述两个正整数a和b最大公约数的算法。
图3.12 顺序结构 (2)选择结构的N-S流程图如图3.13所示。
图3.13 选择结构
(3)当型循环的N-S流程图如图3.14所示。 当P成立
图3.14 当型循环 (4)直到型循环的N-S流程图如图3.15所示。
C语言教程第3章简单的C程序设计PPT课件
10
C语言大学实用教程
3.4 基本输入/输出操作的实现
附 # include <stdio.h>
例 main()
{ char a='B',b='o',c='k';
putchar(a);putchar(b);putchar(b);
putchar( c);putchar('\t');
putchar(a);putchar(b); 运行结果:
C语言大学实用教程
第3章 简单的C程序设计
23.11.2020
1
C语言大学实用教程
第3章 简单的C程序设计
本章主要教学内容 C语句分类 字符输入/输出函数 格式输入/输出函数
23.11.2020
2
C语言大学实用教程
3.1 C语句分类
变量声明语句
int x, y;
表达式语句
i++;
i = i + 1;
printf("Press a key and then press Enter:");
ch = getchar(); printf("You pressed "); putchar(ch); putchar('\n'); }
Press a key and then press Enter: A↙
You23.1p1r.2e0s20sed A
4
C语言大学实用教程
3.3 复合语句和空语句的作用
在什么情况下使用复合语句?
条件语句和循环语句在语法上只允许带一条 语句 当分支和循环中需要进行多项操作时
{
最经典的C教材适合初学者第3章PPT课件
3
3.1 面向对象基本概念
面向对象(object-Oriented,OO)是软件开发的另一种方法,是将软件 从功能、性质等角度抽象出不同的实体,这些实体分别可以完成各种功能, 最后将实体组合成最终能够完成一系列任务的一个完整软件。实现封装和 数据隐藏是面向对象设计的关键技术。
在面向对象程序设计中,数据以及处理这些数据的操作成为一个整体即对 象,同种类型的对象抽象出其共性就形成类。一个类由方法和属性构成, 方法即函数,属性用来描述类的特性,类中的数据可以用类的方法进行处 理,而对外则只需要提供接口,使对象与对象之间进行通信。这样程序之 间结构更简单清晰,模块更独立,更安全,并且可以继承和重用。实际上, 面向对象编程就是一项有关对象设计和对象接口定义的技术,或者说是一 项如何定义程序模块才能使它们“即插即用”的技术。
12
3.2 类及其构成
❖3.2.4 类的成员
1. 类的静态成员
用static关键字修饰的类成员称为类的静态成员。通常那些不会随对象状 态而变化的数据或计算的成员会被定义为类的静态成员。类的变量成员、 方法成员、属性成员、构造函数、事件、运算符等都可以定义为静态成员。 静态成员属于类本身,不管创建了多少个类的实例,它们共享该静态成员。
Employee employee = new Employee(); //访问公共字段 string n = ; //访问私有成员 double s = employee.Salary(); Console.WriteLine("n={0},s={1}", n, s); } }
4
3.1 面向对象基本概念
面向对象具有以下特征: 1. 抽象性 2. 封装性 3. 继承性 4. 多态性
5
3.1 面向对象基本概念
面向对象(object-Oriented,OO)是软件开发的另一种方法,是将软件 从功能、性质等角度抽象出不同的实体,这些实体分别可以完成各种功能, 最后将实体组合成最终能够完成一系列任务的一个完整软件。实现封装和 数据隐藏是面向对象设计的关键技术。
在面向对象程序设计中,数据以及处理这些数据的操作成为一个整体即对 象,同种类型的对象抽象出其共性就形成类。一个类由方法和属性构成, 方法即函数,属性用来描述类的特性,类中的数据可以用类的方法进行处 理,而对外则只需要提供接口,使对象与对象之间进行通信。这样程序之 间结构更简单清晰,模块更独立,更安全,并且可以继承和重用。实际上, 面向对象编程就是一项有关对象设计和对象接口定义的技术,或者说是一 项如何定义程序模块才能使它们“即插即用”的技术。
12
3.2 类及其构成
❖3.2.4 类的成员
1. 类的静态成员
用static关键字修饰的类成员称为类的静态成员。通常那些不会随对象状 态而变化的数据或计算的成员会被定义为类的静态成员。类的变量成员、 方法成员、属性成员、构造函数、事件、运算符等都可以定义为静态成员。 静态成员属于类本身,不管创建了多少个类的实例,它们共享该静态成员。
Employee employee = new Employee(); //访问公共字段 string n = ; //访问私有成员 double s = employee.Salary(); Console.WriteLine("n={0},s={1}", n, s); } }
4
3.1 面向对象基本概念
面向对象具有以下特征: 1. 抽象性 2. 封装性 3. 继承性 4. 多态性
5
《c语言第三章》课件
2 比较运算符
用于比较两个值的大小关系,返回布尔值(真或假)。
3 逻辑运算符
用于连接两个或多个条件,判断复合条件是否成立,返回布尔值。
条件控制语句
if语句
根据条件判断是否执行某段代码块,可以包含多个嵌套的if语句。
switch语句
根据表达式的值选择执行不同的代码块,可以使用多个case和default语句。
《c语言第三章》PPT课 件
这是一份关于《c语言第三章》的PPT课件。课件将重点介绍C语言数据类型、 变量和常量、运算符和表达式、条件控制语句以及循环控制语句的内容。
课件概述
1 目标和重点
2 结构和内容概要
第三章的目标是让学生掌握C语言的基本数据 类型、变量和常量的使用,以及条件和循环 控制语句的应用。
循环控制语句
1
while循环
当条件为真时,重复执行一段代码块,
for循环
2
循环开始前先判断条件是否成立。
指定循环的初始条件、循环条件和循环
结束后的操作,自动进行迭代。
3
do-while循环
先执行一次代码块,再判断条件是否成 立,满足条件则继续循环。
课件按照数据类型、变量和常量、运算符和 表达式,以及控制语句的顺序组织,内容涵 盖了基Hale Waihona Puke 知识和实际应用。C语言数据类型
基本数据类型
包括整型、浮点型和字符型,用于存储不同类型的数据。
派生数据类型
通过基本数据类型组合和修改得到的数据类型,如数组、指针和结构体。
枚举数据类型
用于定义一组常量,可以用于表示某种状态或特定的取值范围。
变量和常量
1 变量声明和定义
在使用变量之前,需要先声明或定义变量,确定数据类型和变量名。
用于比较两个值的大小关系,返回布尔值(真或假)。
3 逻辑运算符
用于连接两个或多个条件,判断复合条件是否成立,返回布尔值。
条件控制语句
if语句
根据条件判断是否执行某段代码块,可以包含多个嵌套的if语句。
switch语句
根据表达式的值选择执行不同的代码块,可以使用多个case和default语句。
《c语言第三章》PPT课 件
这是一份关于《c语言第三章》的PPT课件。课件将重点介绍C语言数据类型、 变量和常量、运算符和表达式、条件控制语句以及循环控制语句的内容。
课件概述
1 目标和重点
2 结构和内容概要
第三章的目标是让学生掌握C语言的基本数据 类型、变量和常量的使用,以及条件和循环 控制语句的应用。
循环控制语句
1
while循环
当条件为真时,重复执行一段代码块,
for循环
2
循环开始前先判断条件是否成立。
指定循环的初始条件、循环条件和循环
结束后的操作,自动进行迭代。
3
do-while循环
先执行一次代码块,再判断条件是否成 立,满足条件则继续循环。
课件按照数据类型、变量和常量、运算符和 表达式,以及控制语句的顺序组织,内容涵 盖了基Hale Waihona Puke 知识和实际应用。C语言数据类型
基本数据类型
包括整型、浮点型和字符型,用于存储不同类型的数据。
派生数据类型
通过基本数据类型组合和修改得到的数据类型,如数组、指针和结构体。
枚举数据类型
用于定义一组常量,可以用于表示某种状态或特定的取值范围。
变量和常量
1 变量声明和定义
在使用变量之前,需要先声明或定义变量,确定数据类型和变量名。
C语言第3章ppt课件
a 12
注意:对变量值的存取是通过变量名实现的
20/100
长春信息技术职业学院---CJ语il言in 程Un序iv设er计sity
第三章 基本
3.3 C语言3种的数据类型 程序语句
例.整型数据的溢出
main
{
int a,b;
运行结果为:
a=32767; b=a+1;
32767,-32768
printf("%d,%d",a,b);
#include <studio.h>
#define PI 3.14 /*定义符号常量*/
main() {
习惯上符号常量名用大写
float l,s;
3.1415926
l = 2* 3P.1I4 *6;
#define PI 3.1415926
s = 3P.1I4 *6*6;
使用符号常量的优点:
printf(“l=%f,s=%f”,l,s); }
二、实型数据
1、实型常量
实数又称为浮点数,有两种表达方式: (1)小数表示法 如:0.123、123.0 (2)科学记数法 如:123e3或123E3、123E-2
注意 小数点不能单独出现; 0.√ .0 √ . e或E的两边必须有数,且其后面必须为整数; 如: 6E0.2 e5
24/100
长春信息技术职业学院---CJ语il言in 程Un序iv设er计sity
int num,total;
num = 10;
total =num*PRICE;
printf("total=%d", total);
}
注意:不可以对符号常量进行赋值!
10/100
C程序设计课件(第3章)
整理ppt
6
3.2.1 运算符重载概述
(3)不能创建新的运算符,只能重载c++中已 有的运算符。
(4)有些运算符不能进行重载。如:“.”类成 员运算符、“*”类指向运算符、“::”类 作用域运算符、“?:”条件运算符及 “sizeof”求字节数运算符。
整理ppt
7
3.2.2 运算符重载的实现
运算符重载的本质就是函数重载。在实现过程 中,首先把指定的运算表达式转化为对运算符函数 的调用,运算对象转化为运算符函数的实参,然后 根据实参的类型来确定需要调用的函数,这个过程 是在编译过程中完成的。运算符重载形式有两种: 重载为类的成员函数和重载为类的友元函数。
整理ppt
3
3.2.1 运算符重载概述
{ real = r, image = i; } void Print(); private: double real, image; }; void Complex::Print() { if(image<0) cout<<real<<image<<'i'; else cout<<real<<'+'<<image<<'i'; }
在以前的学习中,C++中预定义的运算符的操 作对象只能是基本数据类型如int或float等。实 际上,对于很多用户自定义的类型(如类),也需 要有类似的运算操作。
例如复数类Complex。
class Complex
{
public:
Complex () { real=image=0; }
Complex (double r, double i)
C第3章-文档资料-PPT文档资料
构造函数不能像其他的成员函数那样被显 式地调用,它在定义对象的同时调用的。
调用构造函数的一般格式为:
类名 对象名(实参表); 例如:
Person p1(“zhang”,20);
构造函数示例
class couble real; double image;
public:
2、构造函数的概念
构造函数: 是一种特殊的成员函数,它主要用于 对象空间的分配,并进行对象数据的 初始化。
构造函数的特点:
① 名字必须与类名同名;
② 构造函数可以有形式参数,但不能声 明返回类型,void也不能有;
③ 定义对象时,编译系统会自动地调用构 造函数;
构造函数的调用
构造函数的主要功能:是对对象进行初始 化,这些数据成员通常为类的私有的成员。
两种对象创建方式
① “声明方式”创建对象 Person p1, p2(“zhang”,20);
② “动态方式”创建对象 Person *p1=new Person; Person *p2=new Person(“zhang”,20);
特点:不同的创建方式,对象的内存空间分 配区域不同。
3.1.1构造函数
构造函数 的定义
complex( ) {real=1.5; image=2.5;}
complex(double r, double i )
{real=r; image=i;}
int add( ) {return real+image;}
};
int main()
{
complex cmp1;
complex cmp2(5.0, 3.2);
int length(); int curLen; // 串的长度 int maxLen; //串的最大长度 char* ch; // 串存放数组 };
调用构造函数的一般格式为:
类名 对象名(实参表); 例如:
Person p1(“zhang”,20);
构造函数示例
class couble real; double image;
public:
2、构造函数的概念
构造函数: 是一种特殊的成员函数,它主要用于 对象空间的分配,并进行对象数据的 初始化。
构造函数的特点:
① 名字必须与类名同名;
② 构造函数可以有形式参数,但不能声 明返回类型,void也不能有;
③ 定义对象时,编译系统会自动地调用构 造函数;
构造函数的调用
构造函数的主要功能:是对对象进行初始 化,这些数据成员通常为类的私有的成员。
两种对象创建方式
① “声明方式”创建对象 Person p1, p2(“zhang”,20);
② “动态方式”创建对象 Person *p1=new Person; Person *p2=new Person(“zhang”,20);
特点:不同的创建方式,对象的内存空间分 配区域不同。
3.1.1构造函数
构造函数 的定义
complex( ) {real=1.5; image=2.5;}
complex(double r, double i )
{real=r; image=i;}
int add( ) {return real+image;}
};
int main()
{
complex cmp1;
complex cmp2(5.0, 3.2);
int length(); int curLen; // 串的长度 int maxLen; //串的最大长度 char* ch; // 串存放数组 };
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
cout<<“优秀”<<endl;
else if(x>=80)
cout<<“良好”<<endl;
else if(x>=60)
cout<<“合格”<<endl;
else
cout<<“不及格”<<endl;
}
-16-
3.2 if选择语句
4、if 语句的嵌套
-17-
if (表达式1) if (表达式2) 语句1
while(i<=8)
{
cout<<setw(i)<<'\n';i++; Nhomakorabea}
}
-28循- 环变量
* ** *** **** ***** ****** *******
循环体
3.4 循环语句
主要包括3个部分: 1、循环控制条件:
判断循环操作是否进行的条件; 2、循环体:
重复进行的操作; 3、循环控制变量:
else 语句2
else if (表达式3) 语句3
else 语句4
-18-
例子:输出a,b,c中较大的数
#include <iostream>
using namespace std;
void main(){ int a,b,c;
cout<< (a>b?(a>c?a:c):(b>c?b:c ) );
-4-
3.1 算法的基本控制结构
算法
1、计算机执行的操作 2、这些操作的顺序
伪码
采用类似计算机语言的分句格式,以自然 语言描述算法。
-5-
3.1 算法的基本控制结构
流程图
开始/结束 执行
判断 联系
-6-
3.1 算法的基本控制结构
程序的三种基本控制结构 (1)顺序结构 (2)选择结构 (3)循环结构 流程控制语句
case 常量表达式n: 语句n break;
default:语句n+1
}
-22-
跳出switch语句
-23-
例子:输出学生的成绩
int x; cin>>x;
switch(x/10)
{
case 10:
case 9:cout<<“优秀”<<endl;
break;
case 8: cout<<“良好”<<endl;
cout<<“x is <50”endl; } else
cout<<“x is <=0”<<endl;
if和else的对应关系,else总是与离它 最近的if匹配。
-20-
3.3 switch选择语句
-21-
3.3 switch选择语句
switch (表达式)
{ case 常量表达式1: 语句1 break; case 常量表达式2: 语句2 break; ┇
<<setw(8)<<'\n';
}
-27-
* ** *** **** ***** ****** *******
#include <iostream>
#include <iomanip>
using namespace std;
void main(){ int i=2;
循环控制 条件
cout<<setfill('*');
选择语句:if..else、switch 循环语句:while、for 、do..while 转向语句:break、continue
-7-
3.2 if选择语句
-8-
3.2 if选择语句
if_else
1、没有else分支 2、双分支 3、多分支 4、if 语句的嵌套
-9-
3.2 if选择语句
1、没有else分支 if (表达式) 语句;
#include <iomanip>
using namespace std;
void main(){
cout<<setfill('*')
<<setw(2)<<'\n'
<<setw(3)<<'\n'
<<setw(4)<<'\n'
<<setw(5)<<'\n'
<<setw(6)<<'\n'
<<setw(7)<<'\n'
C++
第3章 C++控制语句
网络搜索中心
-1-
用计算机解决实际问题,首 先要分析问题,设计合适的 算法,然后编程实现算法。
-2-
第3章 过程化语句
3.1 算法的基本控制结构 3.2 if选择语句 3.3 switch选择语句 3.4 循环语句 3.5 循环嵌套 3.6 应用举例
-3-
3.1 算法的基本控制结构
cin>>a>>b>>c;
if (a>b)
{
if (a>c) cout<<a<<endl;
else cout<<c<<endl;
}
else
{
if (b>c) cout<<b<<endl;
else cout<<c<<endl;
}
}
-19-
3.2 if选择语句
注意:二义性
int x=-1; if (x>0) { if (x<50)
例如:比较x和y的大小,如果x大则输出x的值 if ( x>y ) cout<<x<<endl;
-10-
3.2 if选择语句
2、双分支
if (表达式) 语句1;
else 语句2;
例如:比较x,y的大小,将较大的数输出
if ( x>y ) cout<<x<<endl;
else cout<<y<<endl;
记录循环体执行的次数,或控制循环的结束条 件。
-29-
3.4 循环语句
while循环语句 while(表达式)
循环体语句;
-30-
例1:编程循环输出1-9这9个数字? 运行结果:
#include <iostream> using namespace std; void main() {
-11-
例子
任意输入一个4位整数的年份,判断该 年是否是润年?
四年一闰,百年不闰,四百年再闰
-12-
#include <iostream> using namespace std; void main() {
int year; cin>>year; ? }
-13-
3.2 if选择语句
3、多分支
break;
case 7:
case 6: cout<<“合格”<<endl;
break;
default: cout<<“不及格”<<endl;
}
-24-
3.4 循环语句
-25-
3.4 循环语句
三种基本语法 1、 while 语句 2、 do…while 语句 3、 for 语句
-26-
#include <iostream>
-14-
if (表达式1) 语句1;
else if (表达式2) 语句2;
else if (表达式3) 语句3;
…
else 语句n;
-15-
例子:输出学生的成绩
#include <iostream>
using namespace std;
void main()
{
int x; cin>>x;
if(x>=90)