计算机语言的概念:计算机语言是人与计算机之间通讯的语言。.
计算机语言的发展:
a.机器语言(第一代编程语言):由0和1二进制指令码组成.
b.汇编语言(第二代编程语言):用助记符号描述的指令.
以上两种语言都是十分依赖于机器硬件,移植性不是很好,但效率十分高.
c.高级语言:分为面向过程语言,如C语言;面向对象语言,如Java语言、C++语言、C#
程序:为了完成某个功能,而编制的有序指令的集合(强调要做什么)
算法:解决问题具体的方法和步骤(怎么做)
基本的程序编写方法—**IPO(Input, Process, Output)**方法。
1.输入
程序中数据的获取
(1)控制台输入
(2)随机数据输入
(3)内部变量输入
(4)文件输入
(5)交互界面输入
(6)网络输入
2.处理
程序中实现处理功能的方法称为“算法”,算法是程序的灵魂。
3.输出
程序对数据处理结果的展示与反馈。
(1)控制台输出
(2)系统内部变量输出
(3)文件输出
(4)图形输出
(5)网络输出
设计程序的步骤:
需求分析:对目标问题进行分析,确定解决问题的过程中设计到的技术问题;
设计算法:对于问题,设计解决问题的具体逻辑;
编写代码:根据算法编写C语言程序;
程序调试:对所编写的程序进行检测,问题的修复;
整理文档:收集结果,整理整个流程文档;
解决问题具体的方法和步骤,一个合理的算法应当包含以下特点:
1、有穷性: 一个算法应包含有限的操作步骤和有限的花费时间,而不能是无限的。事实上“有穷性”往往指“在合理的范围之内”。如果让计算机执行一个历时1000年才结束的算法,这虽然是有穷的,但超过了合理的限度,人们不把他视为无效算法。
2、确定性: 算法中的每一个步骤、每一行代码都应当是确定的,而不应当是含糊的、模棱两可的。算法中的每一个步骤应当不致被解释成不同的含义,而应是十分明确的。也就是说,算法的含义应当是唯一的,而不应当产生“歧义性”。
3、有零个或多个输入性: 所谓输入是指在执行算法是需要从外界取得必要的信息,从而进行数据处理。
4、有一个或多个输出: 算法的目的是为了求解,没有输出的算法是没有意义的。
5、有效性: 算法中的每一个 步骤都应当能有效的执行。并得到确定的结果。
C程序是先由源文件经编译生成目标文件,然后经过连接生成可执行文件。

源程序的扩展名为 .c ,目标程序的扩展名为 .obj , 可执行程序的扩展名为 .exe 。
1、预处理:输入源程序并保存(.C文件)。
2、编译:将源程序翻译为目标文件(.OBJ文件)。
3、链接:将目标文件生成可执行文件( .EXE文件)。
4、运行:执行.EXE文件,得到运行结果。


从图上可以看到,整个代码的编译过程分为编译和链接两个过程,编译对应图中的大括号括起的部分,其余则为链接过程。
参考C/C++程序编译过程详解https://www.cnblogs.com/mickole/articles/3659112.html