程序语言基础
导航
一、程序设计语言
程序设计语言
- 高级语言
- 低级语言
- 机器语言
- 汇编语言
- 指令语句
- 伪指令语句
- 宏指令语句
二、各种程序语言特点
- Fortran语言(科学计算,执行效率高)
- Pascal语言(为教学而开发的,表达能力强,Delphi)
- C语言(指针操作能力强,高效)Lisp语言(函数式程序语言,符号处理,人工智能)
- C++语言(面向对象,高效)
- Java语言(面向对象,中间代码,跨平台)C#语言(面向对象,中间代码,.Net)
- Prolog语言(逻辑推理,简洁性,表达能力,数据库和专家系统)
- Python语言(一种脚本语言)
三、高级程序设计语言
- 解释程序/编译程序
- 解释程序 也称解释器 源程序,或者中间代码
- 编译程序 也称编译器 目标语言程序
- 区别 是否生产独立的目标程序?(解释程序不会产生),编译程序速度比解释程序快
- 基本概念
- 语句
- 语法
- 语义
- 语用
四、编译器的工作阶段
- 词法错误:非法字符,关键字或标识符拼写错误
- 语法错误:语法结构出错,if··endif不匹酡,缺分号
- 语义错误(静态错误:程序编译时候的出错;动态错误:程序执行过程中出错):死循环,零除数,其他逻辑错误
五、程序语言的数据成分
程序设计语言的基本成分包括:数据,运算、控制和传输。
数据是程序操作的对象,具有以下属性:
- 数据名称:由用户通过标识符命名
- 数据类型:说明数据占用内存的大小和存放形式存储类别:说明数据在内存中的位置和生存期
- 作用域:说明可以使用数据的代码范围
- 生存期:说明数据占用内存的时间范围
数据类型 | 基本类型:整型、字符型、实型、布尔类型 |
---|---|
特殊类型:空类型(void) | |
用户定义类型:枚举类型 | |
构造类型:数组、结构、联合 | |
指针类型:type* | |
抽象类型:类类型 |
数据类型转换规则:char,short→int→unsigned→long,float→double
六、程序控制结构
三种基本逻辑结构
- 顺序结构:是一种线性有序的结构,由一系列依次执行的语句或模块构成
- 循环结构:是由一个或几个模块构成,程序运行时重复执行,直到满足某一条件为止
- 选择结构:是根据条件成立与否选择执行路径的结构
七、表达式的例题
- 前缀表达式(+ab)
- 中缀表达式(a+b)
- 后缀表达式(ab-) 逆波兰式
解题方法
- 先构造二叉树,再后序遍历加括号,再移动运算符
- 每个小运算用括号包起来,然后提取符号到括号右边,最后按照数学运算顺序去掉所有括号
- a+b*c+d
- =((a+(b*c))+d)
- =((a+bc*)+d)
- =(abc*++d)
- =abc*+d+
- (a-b)*(c+5)
- =((a-b)*(c+5))
- =(a-b)(c+5)*
- ab-c5+*
- a+b*c+d
八、传值、传址
传值调用:实际上重新复制了一个副本给形参,不改变调用函数实参变量的内容(有去无回)
传址调用:将实参地址给形参,将改变调用函数实参变量的内容(有去有回)