已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第八章 程序设计语言,计算机学院 赵晓南,本章内容,8.1 程序设计语言的发展史 断代划分,高级程序设计语言的分类 8.2 高级程序设计语言的基本要素 变量,数据类型,赋值语句,分支语句,循环语句,过程(函数),注释语句 8.3 高级程序设计语言的编译 编译的基本概念,编译过程,软件的运行,程序设计语言概述,程序设计语言是实现人机交换信息(对话)的最基本工具。 计算机程序设计语言的发展,经历了从机器语言、汇编语言到高级语言的历程。,8.1 程序设计语言断代的划分,机器语言:由机器指令组成。即一串串由“0”和“1”组成的指令序列集。 用机器语言所编写的程序机器能直接识别和执行,所以又称它为目标程序。,缺点: 与自然语言差距大,指令难记忆 调试、排错比较困难,优点: 使用针对特定型号计算机的语言,故而运行效率是所有语言中最高的。,8.1 程序设计语言断代的划分,汇编语言:采用有一定含义的符号即指令助记符来表示指令。 汇编语言比机器语言易读、易维护。但计算机并不认识这些符号,因此就需要一个专门的程序负责将这些符号翻译成二进制数的机器语言,这种翻译程序被称为汇编程序。,一般都采用某些有关的英文单词的缩写,基本与机器指令一一对应,8.1 程序设计语言断代的划分,高级程序设计语言:一种接近于数学语言或自然语言,同时又不依赖于计算机硬件,编写的程序能在所有机器上通用。,1957年,第一个完全脱离机器硬件的高级语言- FORTRAN问世了。此后,40多年来,共有几百种高级语言出现。,1969年,提出了结构化程序设计方法;1970年,第一个结构化程序设计语言Pascal出现,标志着结构化程序设计时期的开始。,80年代初开始,在软件设计思想上,又产生了一次革命,其成果就是面向对象的程序设计。,下一个发展目标是“面向应用”,就是说:只要告诉程序要干什么,程序就能自动生成算法进行处理。 即:非过程化程序语言。,高级程序设计语言的分类,按设计要求分(过程,非过程):过程式语言的主要特征是,用户可以指明一系列可顺序执行的运算,以表示相应的计算过程,如Fortran,Cobol,Pascal等。 按应用范围分(通用,专用):如Fortran、Cobol、Pascal、C都是通用语言。目标单一的语言称为专用语言,如APT等。 按描述问题的方式分(命令型,函数型,描述型,面向对象型)参见P132 表8-3,8.2程序设计语言的基本元素,变量 数据类型 赋值语句 分支语句 循环语句 过程(函数) 注释语句,8.2 基本元素,8.2.1 变量和常量(variable, constant) 变量:在程序运行过程中,其值可以被改变的量称为变量。变量的两个要素:1)变量名。每个变量都必须有一个名字变量名,遵循标识符命名规则。2)变量值。在程序运行过程中,变量值存储在内存中。程序通过变量名来引用变量的值。 常量:在程序运行过程中,其值不能被改变的量称为常量。常量可分为整型常量,实型常量,字符常量,符号常量。,变量在使用前,在内存中会给每个变量申请一定大小的空间。,8.2.2 数据类型,基本数据类型(data type) 整型: short int(短整型) integer(整型) long int(长整型) 实型: real(基本实型) single(单精度) double(双精度)等 字符型:一个单字符。 布尔型:布尔型变量的值只有false和true。,字符型变量,大小写不等价!,注意:整型/实型变量的长度,与具体的机型有关。,注意:整型/实型变量的长度,与具体的机型有关。,8.2.2 数据类型,构造数据类型 数组(array): 相同类型数据的集合。 数组中的各个元素,存放在连续的内存单元中 加标号引用其中的各个变量 结构体(struct): 不同类型数据的集合 结构体中的各个变量,存放在连续的内存单元中 引用时,变量名和分量之间加点表示,如: 1. int V10; 其中的数组元素分别表示为:V0,V1V9。 2. Struct student char name8; char class8; float score; 引用时: 比如s为Struct student型的变量,则 =“wang” s.class =10010903 s.score=89.9,8.2.3 赋值语句,赋值操作的意义就是把一个确定的数值放到某个变量代表的那个内存单元中去。 赋值号: “=”表示赋值操作 左值:等待被赋予值的变量 右值:将要被赋予的“值”,8.2.4 分支语句,分支语句 根据指定的条件(即产生真假/值的表达式),从两条、或者多条路径中选择一条执行。 又例如switch语句,既是多路选择。,8.2.5 循环语句,for(表达式1;表达式2;表达式3) 循环体语句A For语句的循环体执行0次或多次。,执行循环的次数一般情况下是一个指定的值。一般在表达式2中给出。,8.2.5 循环语句,do-while语句的循环体执行1次或多次 do 循环体语句A; while(表达式p);,8.2.6 函数,一个程序一般分为若干个模块,每个模块用来实现一个特定的功能。 函数就是实现一个特定功能的一个语句序列。通过使用函数,可以使程序更短、更清晰。 函数定义的格式,类型标识符 函数名(形式参数表) 声明部分; 语句部分; ,8.2.6 过程(函数),函数调用的基本格式: 用途:构造通用的算法模块;把一个大的、复杂的算法分解成若干个小的、简单的算法合成。,函数名(参数表),主程序运行过程中,遇到调用过程,暂停在那,转去执行被调用的过程,待其结束后返回,继续向下执行。,过程的参数传递,值传递: 把主程序的具体数值,复制给被调用的过程的参数,进行操作。 地址传递: 主程序操作对象(变量)的地址和被调用的过程的参数(虚参)一致,即:二者共享同一个内存地址。,实参:主程序中的待操作对象。虚参:被调用过程的参数,8.2.7 注释语句,目的:注释是对程序的解释说明。使程序更加易读,易维护。,是辅助内容,不包含在真正运行的程序中(即不需要编译),但是却是必不可少的。好的程序都有很出色的注释。,编译的基本概念,编译程序:这是一种将高级语言源程序作为输入,进行翻译转换,产生出机器语言的目标程序,然后再让计算机执行这个目标程序,得到计算结果。 解释程序:这是一种高级语言翻译程序的一种,它将源语言编写的源程序作为输入,解释一句后就提交计算机执行一句,并不形成目标程序。,编译程序的两种方式,编译过程,编译程序工作时,先分析,后综合,从而得到目标程序。所谓
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年光伏组件工艺工程师面试常见问题
- 电控柴油发动机的分类教学设计中职专业课-电控发动机维修-汽车运用与维修-交通运输大类
- 初中第三节 海陆的变迁一等奖教案
- 上海交通大学出版社教学设计中职中职专业课公共管理类79 公共管理与服务大类
- 销售业务分析报告撰写指引业绩分析框架
- 康龙化成深度研究报告:十年磨一剑康龙化成CDMO发展有望迎来质变时刻
- 2026年全职员工劳动合同范本下载
- 2026年劳动合同解除与补偿详解
- 2026年远程办公劳动合同范本
- 异常分娩妇女的家属支持与护理
- 生态牛肉营销方案(3篇)
- 建设项目火灾应急演练脚本
- 2026云南省投资控股集团有限公司招聘168人笔试历年参考题库附带答案详解
- 机器学习系统与优化 课件 第一章 最优化理论
- 2025年二级造价工程师考试建设工程造价管理基础知识真题及答案解析
- 传染病知识培训试题及答案
- 2026年重大事故隐患判定标准专项培训试卷及答案
- 高中主题班会 高二上学期《学会专注、高效学习》主题班会课件
- 2025-2026学年统编版(新教材)小学道德与法治三年级下册《少让父母操心》教学课件
- 学校2026年春季学期师德师风工作计划(附每周工作行事历)
- 湖北省鄂东南五校一体联盟联考2026届数学高一下期末质量跟踪监视模拟试题含解析
评论
0/150
提交评论