1.1 什么是计算机程序
程序: 一组计算机能识别和执行的指令
每条指令使计算机执行特定的操作,一个特定的指令序列(指令集合),用来完成一定的功能.
计算机的本质是程序的机器
1.2 什么是计算机语言
个人简单理解:人与计算机交互的工具
计算机与人都能识别的语言这就是计算机语言
计算机语言的发展阶段:
机器语言
计算机是基于二进制工作的
机器指令:计算机能够识别和接受的二进制代码.
机器语言:机器指令的集合.
缺点:不容易使用,难以修改程序代码
符号语言(汇编语言)
符号语言:英文数字表示一个指令
例如:ADD表示 加
由于计算机不能直接识别 执行符号语言,所以要通过汇编程序的软件将符号语言的指令转换为机器指令. 转换的过程称为”代真”或”汇编”,因而符号语言又叫汇编语言或符号汇编
优点:
相对于机器语言方便使用
缺点:
程序可移植性差,机器依赖性强,如:机器A的上的程序无法在机器B上使用
机器语言和汇编语言是完全依赖于具体机器特性的,是面向机器的语言,相对于其他语言来说更”贴近”计算机,背称为计算机低级语言.
高级语言
不依赖于具体机器,它与具体计算机距离较远。
世界第一个计算机高级语言 FORTRAN语言(20世纪50年代)
高级语言需要通过编译器程序软件转换为机器指令的程序
高级语言的一个语句一般对应多条机器指令
优点:
高级语言数据结构丰富
不依赖于具体机器,它与具体计算机距离较远.(可移植性强)
简单易学,容易推广
高级语言的出现是计算机发展史上”惊人的成就”
高级语言的发展阶段
非结构化语言
符合语法要求,没有严格规范要求
程序难以维护和难以阅读
早期的BASIC FORTRAN和ALGOL都属于非结构化语言
结构化语言
为了解决非结构化语言的缺点(程序难以维护和阅读),提出结构化程序设计方法
程序由良好的基本结构(顺序结构 分支结构 循环结构)构成 程序中的流程不得随意跳转
程序结构清晰,易于编写 阅读和维护
QBASIC FORTRAN77和C语言都是结构化语言
语言特点:支持结构化程序设计方法
缺点:
在编写程序时需要制定具体每个过程的细节 —-> 规模小的程序 还可以 规模较大的程序显得力不从心(面向过程编程)
面向对象语言:对象由数据以及对数据进行的操作构成的,用于处理规模较大的程序。
1.3 C语言的发展及其特点
C语言是国际广泛流行的计算机高级语言。
c语言的祖先是BCPL语言 c语言的设计最初是为了Unix提供一种工作语言
C语言的特点:
1.语言简洁 紧凑,使用方便灵活
2.运算符丰富
3.数据类型丰富
4.具有结构化的控制语句
5.语法灵活,程序设计自由度大
6.C语言允许直接访问物理地址
7.C语言程序可移植性好
8.代码质量高,程序执行效率高
C语言原来是专门为系统软件而设计的
1.4 最简单的C语言程序
1.4.1 最简单的C语言程举例
#include<stdio.h>
void main()
{
int max(int x, int y);//调用max函数的声明
int a,b,c;//声明变量a b c
/*
&: 地址符
&a:a变量的地址
*/
scanf("%d,%d",&a,&b);//scanf是一个输入函数 输入a和b的值
c = max(a,b);//调用max函数 将得到的值复制给C
printf("max=%d\n",c);//输出C的值
}
int max(int x, int y)
{
if(x>y){
return(x);
}else{
return(y);
}
}
1.4.2 c语言程序的结构
c语言程序的结构:
1.一个程序由一个或多个源程序文件组成。
- 规模较小的程序,往往只包括一个源程序文件(一个源文件中只有一个main函数)。
一个源程序文件中可以包括3个部分:
1. 预处理指令 如:#include<stdio.h> #define
C编译系统在对源程序进行"翻译"(转换为二进制)以前,
先由一个"预处理器"对指令进行预处理:将头文件的内容读取,放在#include后面
编译程序对源程序进行编译得到目标程序(机器指令)
2. 全局声明(在函数之外进行的数据声明)
相当于Java中成员属性
作用范围:整个源程序文件
3. 函数定义
每个函数用来实现一定的功能。调用这些函数时,会完成函数定义中指定的功能。
2.函数是C程序的主要组成部分
函数是C程序的基本单位,在设计良好的程序中,每个函数都用来实现一个或几个特地当的功能。
编写C程序的主要工作就是编写一个个函数。
C程序有且仅有一个main函数,有一个或多个函数组成
当程序规模较大时,为了方便编译 调试和管理,一个程序可以包括若干个源程序文件 一个源程序文件就是一个程序模块
编译时,对个源文件程序进行编译得到相应的目标程序,将目标程序连接成为一个统一的二进制可执行程序
程序中调用的函数可以是自定函数,可以是库函数
3.一个函数包括两个部分
int max (int x){}
函数首部
int max (int x)
函数类型 函数名 函数参数类型 函数参数名
函数体:{}(离函数首部最近的)
声明部分:
在调用函数中定义变量
对被调用函数进行声明
执行部分:
{}中的语句,指定在函数中进行的操作 也可以什么都不做即一个空函数
4.程序总是从main函数开始执行的
5.程序中对计算机的操作是由函数中的C语句完成的。
6.在每个数据声明语句的最后必须有一个分号
7.C语言本身不提供输入输出语句
输入输出的操作是由库函数来完成的
8.程序应当包含注释
增加必要的注释,提高程序的可读性。
1.5 运行C程序的步骤与方法
1.上机输入和编辑源程序
2.对源程序进行编译
1.先对程序中的预处理指令进行编译预处理
2.在对完整的源程序进行编译
编译的作用:
首先是检查源程序中是否有语法错误
没有语法错误之后,再编译时,自动包括了预编译和正式编译连个阶段,用户不用发出两次指令
3.进行连接处理
编译后得到的目标模块连接装配起来,再与函数库连接成一个整体,生成一个课供计算机执行的目标程序,称为 可执行程序
连接工作由”连接编辑程序”的软件来实现
4.运行可执行程序
1.6 程序设计的任务
程序设计是指从确定任务到得到结果,写出文档的全过程
一般经历以下几个工作阶段:
1.问题分析
研究给定条件 分析最终目标,找出解题规律,选择合适的解题方法
2.设计算法
设计出解题的方法和具体步骤
3.编写程序
根据得出的算法,用高级语言编写出源程序
4.对源程序进行编辑 编译和连接,得到执行程序
5.运行程序,分析结果
对程序进行调试,发现和排除程序中故障的工程
测试:设计多组测试数据,检查不同数据的运行情况,尽量找出程序中存在的漏洞,并修改程序,使程序能够适应各种情况.
6.编写程序文档
提供程序说明书内容应该包括
程序名称 程序功能 运行环境 程序安装和启动,需要输入的数据,以及使用注意事项
软件是计算机程序和程序文档的总称
- 本文链接:https://www.nscblog.top/posts/31f32bba/
- 版权声明:本博客所有文章除特别声明外,均默认采用 许可协议。
若没有本文 Issue,您可以使用 Comment 模版新建。
GitHub Issues