上海充〔大警 200 C++程序设计与实践 上海交通大学 机械与动力工程学院 2013.9-2014.1 SHAN 上海充〔大擎 SIMANGIAI BAO TON UNTrsrT 第1讲绪论 1.计算机的组成与软件系统 2.程序设计语言简介 3.C+语言及其基本构成 4.Visual C++集成开发环境 5.关于本课程 SHAN
1 C++程序设计与实践 上海交通大学 机械与动力工程学院 2013.9-2014.1 1. 计算机的组成与软件系统 2. 程序设计语言简介 3. C++语言及其基本构成 4. Visual C++集成开发环境 5. 关于本课程 第 1 讲 绪论
计算机的基本构成 源程序 和输入数据 取出数据 输入/输出 存储器 运算器 输出结果 设备 计算结果 存入数据 拟行结果 输入输出 取出 存取命令 程序指令 操作命令 命令 控制器 CPU 口整个过程的执行者是硬件,但硬件是受软件控制的 口编程,就是编写计算机命令、指令程序,使硬件按照人 的意图工作 图上海文大修 3/35 计算机软件系统类型 口操作系统软件:用于管理计算机的资源和控制程序的运行。包括 处理器管理、存储管理、文件管理、设备管理和作业管理。 Windows、Unix、Linix、Android、Mac OS等 口系统开发软件:用于将程序员编写的“源码程序”转化翻译成计 算机硬件可处理执行的机器语言。 Microsoft Visual C+、Borland C++、Gcc等 Matlab 口应用系统软件:是应用系统开发软件和相应的程序开发语言,专 门为某一应用目的而编制的软件。 Misrosoft Office(Word、Powerpoint、Exel) UGll、SolidWorks、AutoCAD QQ、MSN等 图上唐文大坐 4/35 2
2 3/35 计算机的基本构成 输入/输出 设备 存储器 运算器 控制器 源程序 和输入数据 输出结果 取出数据 存入数据 存取命令 操作命令 取出 程序指令 输入输出 命令 计算结果 CPU p 整个过程的执行者是硬件,但硬件是受软件控制的 p 编程,就是编写计算机命令、指令程序,使硬件按照人 的意图工作 4/35 计算机软件系统类型 p 操作系统软件:用于管理计算机的资源和控制程序的运行。包括 处理器管理、存储管理、文件管理、设备管理和作业管理。 Windows、Unix 、Linix、Android 、Mac OS等 p 系统开发软件:用于将程序员编写的“源码程序”转化翻译成计 算机硬件可处理执行的机器语言。 Microsoft Visual C++、Borland C++、Gcc 等 Matlab p 应用系统软件:是应用系统开发软件和相应的程序开发语言,专 门为某一应用目的而编制的软件。 Misrosoft Office (Word、Powerpoint、Exel) UGII、SolidWorks、AutoCAD QQ、MSN等
计算机软件系统间的关系 程序设计 系统开发软件→应用系统软件 言 操作系统软件 口计算机软件系统一般是用某种程序设计语言来实现的,通 常采用软件开发软件进行开发 口攀握一门程序设计语言是进行软件系统开发的基础 口学习如何开发应用软件是本课程的核心内容 图上海文大修 5/35 上海充〔大擎 SIMANGIAI BAO TON UNTrsrT 200 第1讲绪论 1.计算机的组成与软件系统 2.程序设计语言简介 3.C+语言及其基本构成 4.Visual C++集成开发环境 5.关于本课程 SHAN 3
3 5/35 计算机软件系统间的关系 操作系统软件 系统开发软件 应用系统软件 程 序 设 计 语 言 p 计算机软件系统一般是用某种程序设计语言来实现的,通 常采用软件开发软件进行开发 p 掌握一门程序设计语言是进行软件系统开发的基础 p 学习如何开发应用软件是本课程的核心内容 1. 计算机的组成与软件系统 2. 程序设计语言简介 3. C++语言及其基本构成 4. Visual C++集成开发环境 5. 关于本课程 第 1 讲 绪论
什么是计算机程序 口计算机的工作是用程序来控制的 口计算机程序是人们为了处理某个事务而编制的某种计算机语 言命令序列集合 计算机程序经历了三代 >机器语言 >汇编语言 >高级语言 圆上唐夫大坐 7/35 机器语言 口由计算机硬件系统可以识别的二进制指令组成的语言称为机 器语言 口直接操作计算机硬件。 ▣ 例如:机器语言的1+1程序 0 10111000 00000001 缺点:难懂,不易修改,移植 00000000 00000101 性差,但它是计算机硬件可以 00000001 直接执行的语言。 00000000 图上唐文大坐 8/35 4
4 7/35 什么是计算机程序 p 计算机的工作是用程序来控制的 p 计算机程序是人们为了处理某个事务而编制的某种计算机语 言命令序列集合 计算机程序经历了三代 Ø 机器语言 Ø 汇编语言 Ø 高级语言 8/35 机器语言 10111000 00000001 00000000 00000101 00000001 00000000 p 由计算机硬件系统可以识别的二进制指令组成的语言称为机 器语言 p 直接操作计算机硬件。 p 例如:机器语言的1+1程序 缺点:难懂,不易修改,移植 性差,但它是计算机硬件可以 直接执行的语言
汇编语言 口汇编语言将机器指令映射为一些可以被人读懂的助记符,替 代机器语言的二进制码。如ADD、SUB等。 口此时编程语言与人类自然语言间的鸿沟略有缩小,但仍需直 接操作计算机硬件。程序员需要考虑大量的机器细节。 口例如:汇编语言的1+1程序 缺点:难懂,不易修改,移植性差 MOV AX,1 需用汇编程序将汇编语言写的程序 ADD AX,1 翻译成机器语言的程序 图上海文大修 9/35 高级语言 口类似于英语的语言和数学表达式,便于理解涵义 口屏蔽了机器的细节,提高了语言的抽象层次,移植性好 口例如if(y<3)z=x+y; 口需用软件开发熊将高级语言写的程序(源代码)翻译成机器语 言的程序(目标代码) 口常用高级编程语言: Basic、Pascal、C、Ct+、Java、C# C和C++语言是功能最强大、应用最广泛 的高级程序设计语言 图上唐文大坐 10/35 5
5 9/35 汇编语言 缺点:难懂,不易修改,移植性差, 需用汇编程序将汇编语言写的程序 翻译成机器语言的程序 p 汇编语言将机器指令映射为一些可以被人读懂的助记符,替 代机器语言的二进制码。如ADD、SUB等。 p 此时编程语言与人类自然语言间的鸿沟略有缩小,但仍需直 接操作计算机硬件。程序员需要考虑大量的机器细节。 p 例如:汇编语言的1+1程序 MOV AX, 1 ADD AX, 1 10/35 高级语言 p 类似于英语的语言和数学表达式,便于理解涵义 p 屏蔽了机器的细节,提高了语言的抽象层次,移植性好 p 例如 if ( y<3 ) z=x+y; p 需用软件开发熊将高级语言写的程序(源代码)翻译成机器语 言的程序(目标代码) p 常用高级编程语言: Basic、Pascal、C、C++、Java、C# C和C++语言是功能最强大、应用最广泛 的高级程序设计语言
上帝充通大警 第1讲绪论 1.计算机的组成与软件系统 2. 程序设计语言简介 3.C++语言及其基本构成 4.Visual C++集成开发环境 5.关于本课程 SHAN C/C+语言的发展历史 口C语言是1972年由美国贝尔实验室的Q MRitchie研制成功的,吸 收了其它语言的优点逐步成为实用性很强的语言。大多数系统软 件和许多应用软件都是用C语言编写的。 口既有高级语言的特点,又有汇编语言的特点。既适用于设计和编 写大的系统程序,又适用于编写小的控制程序,也适用科学计算。 口程序的可移植性好。用C语言在某一种型号的计算机上开发的程序, 基本上可以不作修改,而直接移植到其它型号和不同档次的计算 机上运行。 口C语言是一种面向过程的结构化程序设计语言,存在的一些缺陷或 不足:如缺少支持代码重用的结构;随着软件工程规模的扩大, 难以适应开发特大型的程度等等。 图上唐文大学 1235 6
6 1. 计算机的组成与软件系统 2. 程序设计语言简介 3. C++语言及其基本构成 4. Visual C++集成开发环境 5. 关于本课程 第 1 讲 绪论 12/35 C/C++语言的发展历史 p C语言是1972年由美国贝尔实验室的D.M.Ritchie研制成功的,吸 收了其它语言的优点逐步成为实用性很强的语言。大多数系统软 件和许多应用软件都是用C语言编写的。 p 既有高级语言的特点,又有汇编语言的特点。既适用于设计和编 写大的系统程序,又适用于编写小的控制程序,也适用科学计算。 p 程序的可移植性好。用C语言在某一种型号的计算机上开发的程序, 基本上可以不作修改,而直接移植到其它型号和不同档次的计算 机上运行。 p C语言是一种面向过程的结构化程序设计语言,存在的一些缺陷或 不足:如缺少支持代码重用的结构;随着软件工程规模的扩大, 难以适应开发特大型的程度等等
C/C+语言的发展历史(续) 口C+是由4 AT&T Bell(贝尔)实验室的巧e Stroustru博士 及其同事于0世纪8年代初在C语言的基础上开发成功的。 C+保留了C语言原有的所有优点,增加了面向对象的机制。 口C+是由C发展而来的,与C兼容。用C语言写的程序基本上 可以不加修改地用于C++。从C++的名字可以看出它是C的超 集。+既可用于面向过程的结构化程序设计,又可用于面 向对象的程序设计,是一种功能强大的混合型的程序设计 语言。 因上酒文大修 13/35 C++程序的基本构成一一个最简单的C+程序 注释或说明 /在屏幕上显示字符Welcome to C++!程序 /编程:张三 包含头文件 #include 使用命 名空间 注释或说明 /使用命名空间std using namespace std; 函数 开始 int mainO 主函数入口 屏幕显示一串字符 cout<“Hello !\n"; cout <<"Welcome to C++!\n"; return 0; 结束 程序执行完毕返回 国上唐文百大坐 14/35 7
7 13/35 C/C++语言的发展历史(续) p C++是由AT&T Bell(贝尔)实验室的Bjarne Stroustrup博士 及其同事于20世纪80年代初在C语言的基础上开发成功的。 C++保留了C语言原有的所有优点,增加了面向对象的机制。 p C++是由C发展而来的,与C兼容。用C语言写的程序基本上 可以不加修改地用于C++。从C++的名字可以看出它是C的超 集。C++既可用于面向过程的结构化程序设计,又可用于面 向对象的程序设计,是一种功能强大的混合型的程序设计 语言。 14/35 C++程序的基本构成-一个最简单的C++程序 //在屏幕上显示字符Welcome to C++!程序 //编程:张三 #include //使用命名空间std using namespace std; int main() { cout << “Hello !\n"; cout << "Welcome to C++!\n"; return 0; } 包含头文件 注释或说明 使用命 名空间 主函数入口 函数 开始 屏幕显示一串字符 程序执行完毕返回 函数 结束 注释或说明
C++程序的基本构成一一个最筒单的C+程序 程序运行结果: Hello! Welcome to C++! 圆上唐夫大坐 15/35 C++程序的基本构成一一个最筒单的C+程序详解 口注释或说明:以双反斜杠符号心开始,后面的文字是注解或说 明,帮助编程者和阅读程序者理解程序,记录一些信息。不被执行 口包含头文件:包含头文件(head files),iostream文件中包含了程 序中cout、”,这不是C++ 的语句,而是C+的一个预处理命令,它以“#”开头以与C+语 句相区别,行的末尾没有分号。 口主函数main:用main代表“主函数”的名字。每一个C++程序都 必须有一个main函数。main前面的int的作用是声明函数的类型 为整型。程序第6行的作用是向操作系统返回一个零值。如果程序 不能正常执行,则会自动向操作系统返回一个非零值,一般为-1。 口函数体是由大括号{括起来的,成对出现。 口本例中主函数内只有一个以cout开头的语句。注意C+所有语句最 后都应当有一个分号。 困上唐文1大学 1635 8
8 15/35 C++程序的基本构成-一个最简单的C++程序 程序运行结果: Hello ! Welcome to C++! 16/35 C++程序的基本构成-一个最简单的C++程序详解 p 注释或说明:以双反斜杠符号‘//’开始,后面的文字是注解或说 明,帮助编程者和阅读程序者理解程序,记录一些信息。不被执行 p 包含头文件:包含头文件(head files),iostream文件中包含了程 序中cout 、”,这不是C++ 的语句,而是C++的一个预处理命令,它以“#”开头以与C++语 句相区别,行的末尾没有分号。 p 主函数main:用main代表“主函数”的名字。每一个C++程序都 必须有一个 main 函数。main前面的int的作用是声明函数的类型 为整型。程序第6行的作用是向操作系统返回一个零值。如果程序 不能正常执行,则会自动向操作系统返回一个非零值,一般为-1。 p 函数体是由大括号{ }括起来的,成对出现。 p 本例中主函数内只有一个以cout开头的语句。注意C++所有语句最 后都应当有一个分号
C++程序的开发过程 库文件 (各种函数) 源程序 目标文件 可执行文件 (文本文件) (二进制文件) (二进制文件) *.CPP 编译 *.OBJ 连接 *.EXE compile link 口源程序编辑、编译、连接、调试等是在C++软件开发系统中实 现和完成的 口Microsoft的Visual C++是应用最为广泛的C++软件开发系统 集成平台 因上酒文大修 17/35 上海充〔大擎 SIMANGIAI BAO TON UNTrsrT 200 第1讲绪论 1.计算机的组成与软件系统 2. 程序设计语言简介 3.C+语言及其基本构成 4.Visual C++集成开发环境 5.关于本课程 SH 9
9 17/35 C++程序的开发过程 源程序 (文本文件) *.CPP 目标文件 (二进制文件) *.OBJ 可执行文件 (二进制文件) *.EXE 库文件 (各种函数) 编译 连接 compile link p 源程序编辑、编译、连接、调试等是在C++软件开发系统中实 现和完成的 p Microsoft 的Visual C++是应用最为广泛的C++软件开发系统 集成平台 1. 计算机的组成与软件系统 2. 程序设计语言简介 3. C++语言及其基本构成 4. Visual C++集成开发环境 5. 关于本课程 第 1 讲 绪论
Visual C.++软件开发系统集成平台 口Microsoft Visual Studio是一个多语言的软件开发系统集成 平台 ▣包括C/C++、Fortran、Basic、C#、Pasical、Web等程序 语言 口本课程选用Visual C+2010 启动Visual C+ ▣仅安装Visual C.+:开始一>Microsoft Visual Studio2010 口安装多种程序语言:开始一>Microsoft Visual Studio2010 一>Visual C++2010 图上海文通大修 19/35 Visual C++软件开发系统集成平台介绍 、命令菜单 ,2 命令图标 项目 文件管理窗口 源程序 编辑窗口 状态 提示窗口 圆上海文1大修 20/35 10
10 19/35 Visual C++软件开发系统集成平台 p Microsoft Visual Studio 是一个多语言的软件开发系统集成 平台 p 包括C/C++、Fortran 、Basic 、C# 、Pasical 、Web等程序 语言 p 本课程选用Visual C++ 2010 启动Visual C++ p 仅安装Visual C++:开始->Microsoft Visual Studio 2010 p 安装多种程序语言:开始->Microsoft Visual Studio 2010 -> Visual C++ 2010 20/35 Visual C++软件开发系统集成平台介绍 命令菜单 命令图标 项目 文件管理窗口 源程序 编辑窗口 状态 提示窗口