陈 峦 副教授 研究院大楼316# 电子科技大学 能源科学与工程学院

Slides:



Advertisements
Similar presentations
程序设计基础 第 2 章 解题要有程序 主讲:吴献彩 Tel : QQ :
Advertisements

C/C++ 程序设计 吉林财经大学 管理科学与信息工程学院 李艳东 : Tel :
主讲:王幸民 理学院计算机基础教学部.
軟體工程 -物件導向程式設計與UML系統分析實作
基础模块 模块一 程序设计基础 (一)开发环境部分.
C语言程序设计 主讲教师 :张群燕 电话:
授课教师:江星玲 1.
培养目标 1.建立基本的程序设计概念体系,掌握基础程序设计方法。
第一章 绪论.
第一章 認識程式語言.
第八章 信息系统开发概述.
第一章 C语言概述 计算机公共教学部.
单片机应用技术 项目一 循环彩灯装置 第7讲 Keil软件的使用 《单片机应用技术》精品课程组 湖北职业技术学院机电工程系.
欢迎各位 Nice to Meet U.
課程名稱:程式設計 授課老師:________
Visual Basic程序设计 主 编  柳青.
Proteus虚拟仿真.
QT编程简介 李杨 Qt系列讲座 组织:柴树杉 1. Qt编程简介 智能仿生,柴树杉 2. 创建主窗口程序 3. Qt+VTK开发三维应用
第八章 分析與設計階段 – 物件導向設計(OOD)
C++程序设计 主讲:王兴波教授 1.
电工电子实验中心.
第1章 程式語言與Visual Basic的基礎
C# 程式設計 第一部分 第1-4章 C# 程式設計 - 南華大學資管系.
第一章 認識Visual C 環境架構 1-1 認識Visual C Visual Studio 概觀
高级语言程序设计 主讲人:陈玉华.
Chapter 1 用VC++撰寫程式 Text book: Ivor Horton.
图形化函数库及操作 叶安胜. 图形化函数库及操作 叶安胜 EasyX 库背景 Turbo C的图形函数库的使用是很简单的,可是TC 本身环境太老了。 VC ++6.0编辑和调试环境都很优秀,也有适合教学的免费版本。可惜在 VC 想画条直线画个圆都很难,还要注册窗口类、建消息循环等等,初学者会受严重打击的。
第二十九章 DLL / LIB函式庫開發 當我們開發程式到一個階段之後,我們一定會希望各個Component的程式碼可以分開的越清楚越好。而這一章最主要就是要告訴各位讀者,我們常在Windows系統中看到的dll或是lib的檔案該怎麼實作?做出這樣的library我們又該如何運用?為什麼使用dll或是lib有利於我們開發程式?以上這些疑問都將會在這一章中得到解答。
簡易 Visual Studio 2010 C++ 使用手冊
南华大学计算机学院 软件工程系 QQ讨论群:
如何在VC环境下 安装开发包 ----以EasyX举例.
第1章 .NET与C# 为什么要设计一门新的编程语言? C#在微软的.Net平台中占据什么样的地位?
第1章 Delphi 6快速入门 1.1 Delphi 6概述 1.2 Delphi 6的安装 1.3 Delphi 6的界面描述.
第2章 Visual FoxPro 简介 Visual FoxPro概述 Visual FoxPro设计工具
授课老师:龚涛 信息科学与技术学院 2018年3月 教材: 《Visual C++程序员成长攻略》 《C++ Builder程序员成长攻略》
Delphi程序设计与应用教程 宁正元 主编 刘雄恩 陈琼 副主编 中国水利水电出版社
R教學 安裝RStudio 羅琪老師.
第1章 Windows应用程序框架的 创建与消息处理
移动电子商务 第十二章 Windows Mobile应用案例 倚动软件工厂实验室.
第一章 C++编程简介 丘志杰 电子科技大学 计算机学院 软件学院.
Visual Basic 6.0 ——程序设计.
第9章 DSP集成开发环境CCS 内容提要 CCS是TI公司推出的用于开发DSP芯片的集成开发环境,它采用Windows风格界面,集编辑、编译、链接、软件仿真、硬件调试以及实时跟踪等功能于一体,极大地方便了DSP芯片的开发与设计,是目前使用最为广泛的DSP开发软件之一。 本章对CCS开发软件的使用作了详细地介绍。首先,对CCS开发软件作了简要地说明,并介绍了该软件的安装及配置;其次,介绍了CCS的基本操作,包括:CCS的窗口和工具条、文件的编辑、反汇编窗口、存储器窗口、寄存器窗口、观察窗口
软件学院 张 慧 清华大学软件学院.
簡易 Visual Studio 2005 C++ 使用手冊
Instructor:Po-Yu Kuo 教師:郭柏佑
谭浩强 编著 中国高等院校计算机基础教育课程体系规划教材 C++程序设计.
第0章作业: 教材P12-练习与实践 1.写出用符号’*’输出描绘汉字”大”的流程图。
第1章 概述 本章要点: C语言程序结构和特点 C语言程序的基本符号与关键字 C语言程序的编辑及运行 学习方法建议:
Name1..hour //加班時數 name2..hour //請假時數
第 二 章 数据类型、运算符与表达式.
第一章 程序设计和C语言 主讲人:高晓娟 计算机学院.
C语言程序示例: 1.输入10个数,按从小到大的顺序排序。 2.汉诺塔问题。.
C程序设计.
1.4 Turbo C V2.0的基本操作 运行一个C语言程序的一般过程 TC的启动、退出与命令菜单 编辑并保存一个C语言源程序
7.1 C程序的结构 7.2 作用域和作用域规则 7.3 存储属性和生存期 7.4 变量的初始化
C++语言程序设计 第一章 绪论 成都信息工程学院计算机系.
導 論 教學投影片.
VC++程序调试演示 An Overview of ICU 19th International Unicode Conference
第6章 面向对象开发的 分析与设计.
项目1 C程序设计起步 学习目标: 通过该项目你可以知道: C语言的用途。 C语言的基本符号和关键字。 C语言程序的结构及特点。
第一章 C语言概述 目录 什么是语言、程序 C语言的历史与发展 C语言的书写形式与程序结构 运行C语言的步骤与方法
C++程序设计 吉林大学计算机科学与技术(软件)学院.
本节内容 函数嵌套调用的内存布局 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
计算机程序设计 小应用工具设计 1.
第四章 函数 丘志杰 电子科技大学 计算机学院 软件学院.
第十二章 位运算.
《数据结构与算法设计》第一部分 面向对象的C++程序设计基础.
C++程序设计 概述 潘荣江 山东大学软件学院.
面向对象程序设计 C++教程 西安工业大学 于帆.
熟悉VC++开发环境.
Presentation transcript:

陈 峦 副教授 13880209111,chluan@uestc.edu.cn 研究院大楼316# 电子科技大学 能源科学与工程学院 陈 峦 副教授 13880209111,chluan@uestc.edu.cn 研究院大楼316# 电子科技大学 能源科学与工程学院

第一章 概述 §1—1 程序设计 软件:是商品化的程序 软件 = 程序+文档 程序:由若干个文件组成

一、程序设计语言 低级 封装、抽象(屏蔽实现细节,透明)→提高代码复用率 人的自然语言、人的自然习惯思维 高级

编译、解释 汇编 面向对象 高级语言 (面向过程) 汇编语言 助记符语言 (面向CPU) 二进制语言 机器语言 (面向电路) 面向目标 (屏蔽实现细节,例如:SQL) 智能语言 自然语言 (编程语言=自然语言,随便说话就是程序)

面向过程的高级语言→面向对象语言 鼻祖:Fortran(1954年) C复杂,功能强大→C++(Visual C++、C++ Builder)→Java,C# Basic简单,入门→Visual Basic(解释,编译) Fortran数值计算→Visual Fortran Pascal教学→Delphi

二、面向过程与面向对象 面向过程程序设计=算法+数据结构 面向过程程序设计语言=运算符+语句+数据类型 算法=运算符+语句 数据结构=数据(值域)+结构(关系) 数据类型=数据结构+操作(函数)

面向对象程序设计=对象+对象+对象 面向对象语言=封装性+继承性+多态性 对象=算法+数据结构 对象:如windows平台上的多种控件:按钮、标签、菜单、文本框等 封装性:类和对象 类:ADT(Abstract Data Type),抽象数据类型 继承性:继承、派生,单继承→树,多继承→DAG图(有向无环图) 多态性:函数重载、运算符重载、动态联编(虚函数)、模板

面向对象的核心思想:支持代码复用,屏蔽实现细节,减少信息冗余 实现软件系统的柔性制造 早期:计算→数值型数据类型:标量(原子)数据类型,结构数据类型→预定义 现在:信息处理→非数值型数据:抽象数据类型,可描述任何事物,如声,图,视频等→用类来自定义,如复数,集合,堆栈,队列等

类中的成员有三种权限:public、protected、private,防止非法访问,提高安全性 继承:减少信息冗余,降低软件成本,缩短开发周期,提高代码质量 多态性:一个名字,多种语义;相同界面,多种实现;同一接口,多种方法

三、面向过程与面向对象的比较 面向过程 1.强调结构化,模块化 2.以过程为出发点 3.以数据结构为中心 4.本质是功能分解,算法分解 5.用计算机观点来进行程序设计 6.分析与设计不一致 7.将数据与处理数据的过程相分离 8.代码的可重用性差,维护困难 面向对象 1.强调对象化 2.以客观存在的事物为出发点 3.以问题域中的事物(对象)为中心 4.本质是对象分解 5.模拟人类习惯的解题方法来进行程序设计 6.分析与设计一致 7.将数据及对数据的操作方法封装在一起,作为一个对象 8.代码的可重用性好,可扩充性好,维护容易

四、积木化软件设计思想 积木化:单入口,单出口,高内聚,低耦合→代码复用,屏蔽实现细节 语句化→结构化→模块化→对象化 类似于:二极管三极管电阻→集成电路芯片→电路板→计算机→计算机网络

结构化:顺序结构,选择结构(分支结构、条件结构),循环结构(重复结构) 模块化:子程序,函数,过程,如Turbo C的库函数 不用知道实现细节,只知道入口出口即可

对象化:更宏观的程序模块 对象:是数据和函数的封装体,与人认识现实世界的思维习惯一致(对象分解) 类:抽象数据类型ADT,如同int→数据类型 对象:类的实例:如同x→变量

积木化的优点: 便于代码复用 便于软件维护(查错、维修局部化) 便于增删功能 可提高可读性,可减少信息冗余 简化问题,分而治之

五、软件工程 1.软件质量 软件质量:内部质量和外部质量 正确性:correctness 健壮性:robustness 可扩充性:extendibility 可复用性:reusability 协调性:compatibility

2.模块化 当今软件工程强调的重点→模块化 模块化的5个标准: 模块可分解性:modular decomposability 模块可结合性:modular composability 模块可理解性:modular understandability 模块连续性:modular continuity 模块保护性:modular protection

模块化的5个原则: 语言模块单元:linguistic modular units 少接口:few interfaces 接口弱耦合性:small interfaces 显式的接口:explicit interface 信息隐藏:information hiding

3.面向对象的软件工程: ① OOA:面向对象分析 Object-Oriented Analysis ② OOD:面向对象设计 Object-Oriented Design ③ OOP:面向对象的编程 ④ OOT:面向对象的测试 ⑤ OOSM:面向对象的软件维护

§1-2 C++与C的关系 一、C++与C的关系 1.C语言是C++的一个子集,C++是C语言的超集,C++包含了C语言的全部内容

二、C语言和C++语言的特点 C语言的特点: ① 语言简洁,灵活,高效 ② 运算符和数据类型丰富 ③ 具有结构化控制语句,程序的可移植性好 ④ 可直接访问物理地址,具有面向过程的高级语言和汇编语言的双重优点

C++的特点: ① 继承保持了C的优点:简洁,高效;接近汇编语言 ② 改进了C的不足,比C更安全 ③ 既支持面向过程程序设计,又支持面向对象程序设计

§1-3 上机调试及运行 一、Turbo C++上机调试及运行 §1-3 上机调试及运行 一、Turbo C++上机调试及运行 1.编辑:File→New→编辑→Save或Save as→设置路径及文件名为:*•cpp→OK 2.编译:①Compile→Compile *•cpp→改错→重新编译→无错→*•obj ②Compile→Make *•exe→*•exe 3.运行:Run→Run *•exe→到User Screen中看结果,或Alt+F5看结果

二、Visual C++上机调试及运行 1.编辑 启动VC++编译系统→Microsoft Developer studio窗口 File Edit View Insert Project Build Tools Window Help 共9个菜单项 File→New→File→C++ Source File进入编辑屏幕 存盘:File→Save或Save as→*·cpp→OK

2.编译连接和运行 (1)单文件程序:程序中只有一个文件 例://f.cpp文件内容 # include “iostream.h” void main( ) {int a=3,b=4; int c=a+b; cout<<c<<endl; } //显示结果:7

① Build→Compile *•cpp 显示错误信息,改正后重新编译 直到显示:*•obj→0 error(s),0 warning(s) 编译无错 ② Build→Build *•exe 直到显示:*•exe→0 error(s),0 warning(s) 连接成功 ③ Build→Execute *•exe 显示结果 press any key to continue……

(2)多文件程序:该程序至少包含二个文件 例://f1.cpp文件内容 #include “iostream.h” int add( int,int); void main( ) {int a=3,b=4; int c=add(a,b); cout<<c<<endl; } //f2.cpp文件内容 int add(int x,int y) {return x+y;}

① 在某个指定目录下建好C++的源程序文件,如:d:\user 下 ② 创建一个新的项目文件 File→New → Project →出现New Project对话框 a.选择项目类型为:Win32 Console Application b.输入项目名字:在Project name中输入,如:kkk c.输入路径名:在Location中输入,如:d:\user 单击OK按钮确认,则项目文件已建立

③ 向项目文件中添加文件 Project→Add File to Project→Files→显示Insert File into project对话框→添加文件f1.cpp,f2.cpp ④ 编译连接项目文件 Build→Build All 改错后,重新编译,直到无错 则生成项目文件名的可执行文件 ⑤ 运行项目文件: Build→Execute *•exe 显示运行结果 press any key to continue……