C语言程序设计 第一章 程序设计基本概念

1.C编译程序把文件后缀为C的源程序文件编译成文件后缀为.obj的二进制文件(不能直接运行!缺少库函数、函数地址没有填好),链接将一个或多个目标文件与程序用到的库文件连接起来,形成一个可以在操作系统直接运行的执行程序.exe(全部地址已经填好,包含全部需要的机器码,操作系统可以直接运行

2.几种语言:

  • 机器语言:纯二进制 0/1,CPU 直接识别。
  • 汇编语言:低级符号语言,用助记符MOV ADD写代码,人看得懂,CPU 看不懂。
  • 汇编源程序:用汇编语言写出来的源代码文件(.asm)。
  • 汇编程序翻译软件(工具)!!不是写出来的代码,是翻译程序。

3.简单程序设计的实施步骤:① 分析问题,明确输入输出;②设计算法;③ 编写程序;④ 调试与测试;⑤整理文档。

4.程序设计是指设计、编程、调试程序的方法和过程,通常分为4个阶段:①问题建模;②算法设计;③编写代码;④编译调试。

5.算法可以使用自然语言、伪代码、流程图等多种不同的方法来描述。

6.一个算法必须具备以下五个基本特征:

           有穷性:算法必须在执行有限步之后结束。

           确定性:每一步的操作必须有明确的定义,不能产生歧义。

           可行性:每一步操作都必须是基本的、能够通过有限次执行完成的。

           输入:一个算法可以有零个或多个输入。

           输出:一个算法必须有一个或多个输出,用来反映算法的结果。

7.算法的三种基本结构:顺序结构,选择结构(分支结构),循环结构

8.

第一个起止框(开始和结束)看起来形状有点模棱两可,实际上是圆角的矩形。

9.C程序的模块化主要通过函数来实现。C语言允许对函数单独进行编译,从而可以实现模块化。

10.N-S流程图(又称盒图Chapin图、结构化流程图)是一种用于描述算法逻辑的图形工具,由美国学者 I. Nassi 和 B. Shneiderman 于 1972 年提出。它专为结构化程序设计而设计,用特定的矩形框表示顺序、选择、循环三种基本控制结构,并且不允许使用带箭头的流程线,从而强制算法保持清晰的结构化特征。

基本特点:

①无流程线:程序的控制流完全通过方框的上下顺序和嵌套关系来表示,不使用箭头跳转。

②单入口单出口:每个基本结构框都只有一个入口和一个出口,符合结构化原则。

③结构强制:从图形上就直接排除了 goto 等非结构化跳转,保证程序模块化。

④直观易读:图形嵌套层次清晰,能直接反映算法的逻辑结构,便于理解和交流。

⑤易于转换:N-S图与高级语言的控制结构(if、while、for 等)有明确的对应关系,容易转换为代码。

10.结构化程序设计:自顶向下,逐步求精(逐步细化),模块化,限制 goto

     程序模块化:可采用自顶向下、逐步细化的设计方法把若干独立模块组装成所要求的程序

11.进行模块化设计时,首先设计框架,并定义和调试好各个模块之间的输入输出关系,完成各个模块的编写调试后再集中编译

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐