程序语言基础
导航
文章目录
- 程序语言基础
 - 导航
 - 一、程序设计语言
 - 二、各种程序语言特点
 - 三、高级程序设计语言
 - 四、编译器的工作阶段
 - 五、程序语言的数据成分
 - 六、程序控制结构
 - 七、表达式的例题
 - 八、传值、传址
 
一、程序设计语言
程序设计语言
- 高级语言
 - 低级语言 
  
- 机器语言
 - 汇编语言 
    
- 指令语句
 - 伪指令语句
 - 宏指令语句
 
 
 
二、各种程序语言特点
- 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 
    
 
八、传值、传址
传值调用:实际上重新复制了一个副本给形参,不改变调用函数实参变量的内容(有去无回)
传址调用:将实参地址给形参,将改变调用函数实参变量的内容(有去有回)



















