计算机教程编程基础

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第1页2020/1/30中山大学计算机科学系第四章程序设计基础程序设计语言算法与流程图程序设计方法简介JavaScript语言及其运行环境JavaScript编程基础JavaScript流程控制调试JavaScript程序JavaScript函数第2页2020/1/30中山大学计算机科学系4.1程序设计语言程序是用计算机语言描述的解决某一问题的步骤,由符合一定词法、语法和语义规则的符号序列组成。程序设计语言是用于编写计算机程序的语言,包括一组符号定义和相应规则。4.1.1语言分类(1)机器语言是二进制代码语言,能被计算机硬件直接识别并执行。如计算2+3:0010001100000010--将2送累加器A;前8位是操作码,后8位是操作数0000001100000011--将3与累加器A相加,结果放累加器A00000010--将累加器A中的数(即5)从总线输出第3页2020/1/30中山大学计算机科学系4.1.1语言分类(2)汇编语言是用助记符代替操作码、用地址符代替操作数的一种面向机器的低级语言。例如:MOVA,2H-----将2送累加器AADDA,3H-----将3与累加器A相加,结果放累加器OUTLBUS,A-----将累加器A中的数(即5)从总线输出汇编概念:汇编语言程序必须使用汇编程序把它翻译成机器语言后,才能被机器理解、执行。第4页2020/1/30中山大学计算机科学系4.1.1语言分类(3)高级语言的表达方法接近于人的自然语言和数学表达式,不依赖于机器的特定属性。例如:Print2+3翻译方式:编译方式:使用编译程序解释方式:使用解释程序第5页2020/1/30中山大学计算机科学系4.1.2词法、语法和语义规则(1)词法:组成合法语句的基本单元称为单词,构成合法单词的规则称为词法。如语句“x1=2”中的x1、=、2是合法单词,而1x不是合法变量名。(2)语法:具有特定含义的符号串称为语句,构成合法语句的规则称为语法。例如:语句“x=*2”符合词法,但不符合语法规则。(3)语义:合法语句的实际含义称为该语句的语义。对语义的理解是否准确,直接影响程序的正确性和可靠性。例如:在JavaScript中,“x==2”表示判断变量x与数值2是否相等,而“x=2”却表示将2赋值给x。第6页2020/1/30中山大学计算机科学系4.2算法与流程图算法是计算机解决问题的方法和步骤,可以使用自然语言、流程图、程序设计语言等描述工具来描述。4.2.1流程图流程图是用一些几何框图、流程线和文字说明表示各种类型的操作。基本图形和含义第7页2020/1/30中山大学计算机科学系4.2.2对算法的初步认识例4.1将两个变量X和Y的值互换。设X=5,Y=10用自然语言描述:S1:将Y值存入中间变量Z:Y→ZS2:将X值存入变量Y中:X→YS3:将中间变量Z的值存入X中:Z→X用流程图描述第8页2020/1/30中山大学计算机科学系4.2.2对算法的初步认识例4.2求1+2+3+4+…+100用自然语言描述:S1:设累加和变量S,且0→S;计数变量i,且0→iS2:计算和S+i→S,并把计数变量增值i+1→i。S3:判断:当i≤100时,返回第2步S2,再次求和;当i100时,顺序执行下一步S4。S4:输出结果,S为所求之和。用流程图描述第9页2020/1/30中山大学计算机科学系4.2.3算法评价标准⑴正确性:保证运行结果正确⑵可读性:良好的可读性有助于保证算法的正确性。科学、规范的程序设计方法(如结构化方法和面向对象方法)可提高算法的可读性。⑶通用性:一个好算法要尽可能通用,可适用于同类问题的求解。⑷高效率:效率包括时间和空间两个方面,一个好的算法应执行速度快、占用内存少。可读性要优先于效率,高效率处于次要地位。第10页2020/1/30中山大学计算机科学系4.3程序设计方法简介程序设计(Programming)是设计、编制和调试程序的方法和过程,一般包括问题分析、算法设计、程序编写、程序调试、资料整理等步骤。程序设计的常用方法有结构化程序设计(StructuredProgramming,SP方法)和面向对象程序设计(Object-OrientedProgramming,OOP方法),前者注重事物的表现行为,后者注重事物的结构。第11页2020/1/30中山大学计算机科学系4.3.1结构化程序设计结构化程序设计方法是指按照模块化、层次化的方法来设计程序。其核心思想包括以下三点:(1)程序模块化:是指把一个大程序分解成若干个小程序(即模块)。(2)语句结构化:是指每个模块用顺序、选择和循环三种流程结构来实现,如图4.6所示。第12页2020/1/30中山大学计算机科学系4.3.1结构化程序设计(3)自顶向下、逐步求精的设计过程:一方面是指将一个复杂问题的求解过程分解和细化成由若干个模块组成的层次结构;另一方面是指将每个模块的功能逐步分解、细化为一系列的处理步骤,直至分解为三种基本控制结构的组合。例4.3某班80名学生,求该班成绩的不及格率。首先将任务“求不及格率”分解成2个子模块“输入成绩”和“统计不及格人数”,如图:第13页2020/1/30中山大学计算机科学系4.3.1结构化程序设计然后使用流程图分别描述这些模块的实现算法,如图4.7中的子图B、C、D所示最后使用某种程序设计语言加以实现第14页2020/1/30中山大学计算机科学系4.3.2面向对象程序设计面向对象程序设计是以对象为基本结构单元的程序设计,有以下基本概念:①对象:由一组属性和方法构成。②消息:请求对象执行某一操作或返回某个状态③封装:对象将数据及相关操作封装在一起成为一个相对独立的实体。④类:类是具有相同属性和方法的一组对象的抽象描述。对象也称为类的实例。面向对象方法支持较高的可读性、可维护性和可修改性,以及软件重用。面向对象语言(如C++)、基于对象的语言(如JavaScript)第15页2020/1/30中山大学计算机科学系4.4JavaScript语言及其环境4.4.1JavaScript简介JavaScript是一种解释型的、基于对象的脚本语言。适用于创建短小的应用程序。JavaScript最初由Netscape(网景)公司于1995年设计并实现。1997年,JavaScript被制定为Web脚本语言的标准,该标准编号是ECMA262。JScript是Microsoft公司对ECMA262语言规范的一种实现。本书将JScript等同于JavaScript。第16页2020/1/30中山大学计算机科学系4.4JavaScript语言及其环境脚本是用脚本语言编写的程序,通常解释执行。JavaScript脚本只能在某个解释器(或称“宿主”)上运行。依赖于宿主特性,JavaScript脚本具有不同的用途,如:动态网页编程:将JavaScript脚本嵌入网页中,由Web浏览器解释执行。Web服务器编程:将JavaScript脚本嵌入ASP页面中,由服务器端的ASP服务程序解释执行。自动管理Windows系统:将JavaScript脚本保存为独立的脚本文件,由Windows脚本宿主解释执行,实现对Windows系统的自动管理。第17页2020/1/30中山大学计算机科学系4.4.2Windows脚本宿主一、WSH简介Windows脚本宿主是Windows脚本的运行环境,内嵌在微软的Windows操作系统中。其中,WindowsXP已内置WSH5.6版。脚本引擎是某种脚本语言的解释程序。安装WSH时已自动安装JavaScript和VBScrip这两种脚本引擎WSH可以执行以文本文件格式独立存在的Windows脚本,如.js、.vbs、.wsf、.wsh第18页2020/1/30中山大学计算机科学系4.4.2Windows脚本宿主二、编写第一个JavaScript脚本程序例4.4使用记事本编写一个JavaScript脚本程序,显示文字“HelloWorld!”。操作步骤如下:⑴启动Windows记事本;⑵输入以下代码:WScript.Echo(HelloWorld!);⑶将这段代码保存在文件S0404.js中。第19页2020/1/30中山大学计算机科学系4.4.2Windows脚本宿主三、脚本的执行方式(1)显式启动WSH执行脚本WSH有两种形式,即窗口式WSH(WScript)和命令式WSH(CScript),分别对应可执行文件WScript.exe和CScript.exe。如:wscriptE:\Scripts\S0404.js或cscriptE:\Scripts\S0404.jsWScript和CScript对脚本的执行效果基本相同,唯一区别在于输出形式不同第20页2020/1/30中山大学计算机科学系4.4.2Windows脚本宿主三、脚本的执行方式(2)隐式启动WSH执行脚本Windows脚本文件也可以像普通可执行文件那样直接执行:通过“我的电脑”打开脚本文件所在的文件夹,然后双击它。通过Windows“开始”菜单的“运行”命令,键入脚本文件的完整路径名。在命令提示符中键入脚本文件的完整路径名。第21页2020/1/30中山大学计算机科学系4.4.3使用Windows脚本帮助微软在发布WSH5.6时,也为脚本开发者提供了一个名为“MicrosoftWindows脚本技术”的说明文档(CHM格式)。它提供了对JScript、VBScript、脚本运行时库和Windows脚本宿言等技术的详细描述。还可以到微软的脚本中心站点()获取大量的脚本应用技术及实例。第22页2020/1/30中山大学计算机科学系4.5JavaScript编程基础本节介绍最基本的编程概念,即常量、变量、运算符、表达式及其类型。4.5.1数据类型与常量(一)数值型(1)整数十进制:使用0~9的数字序列表示。例如:25,+234,-998,085。八进制:使用0~7的数字序列表示,并且首位必须是0。例如:0235,-065。十六进制:使用0~9、A、B、C、D、E、F(或a、b、c、d、e、f)的数码序列表示,并且前两位必须是0X或0x。例如:0x235,-0XA8,0XEF。第23页2020/1/30中山大学计算机科学系4.5.1数据类型与常量(2)浮点数浮点数是可以有小数部分的数值。浮点数常量只能采用十进制,表示形式有两种:普通形式。由整数部分、小数点和小数部分组成,如:3.2、12.0、12.、.5、-1.8。指数形式。如5.34e5(表示5.34×105)、312E-4(表示312×10-4)。其中,e(或E)后面的指数是-324~308之间的整数。如23e4321和1.2e2.5等都是不合法的。另外,JavaScript用一个特殊的数值常量NaN(NotaNumber的缩写,即“非数字”)表示无意义的数学运算结果。第24页2020/1/30中山大学计算机科学系4.5.1数据类型与常量(二)字符串型字符串用于表示文本数据,由0个或多个字符组成的序列组成。在表示字符串常量时,必须为字符串首尾添加成对的双引号“”或单引号“'”,如:Helloword!'世界,您好!'a或'a''Hi!Isaid.'转义字符是指以反斜杠“\”开头,后跟一个或多个字符。例4.5第25页2020/1/30中山大学计算机科学系4.5.1数据类型与常量(三)布尔型布尔型(Boolean)就是逻辑型,只有两个值:逻辑“真”和逻辑“假”,分别对应于布尔常量true和false。(四)其他类型的常量null是空值常量,表示空的或不存在的对象引用。undefined是未定义值常量,表示变量还没有赋值。第26页2020/1/30中山大学计算机科学系4.5.2变量变量是程序中一个

1 / 92
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功