C语言的程序结构

发布 2021-05-02 16:24:28 阅读 5299

1 基本程序结构

任何一种程序设计语言都具有特定的语法规则和规定的表达方法。一个程序只有严格按照语言规定的语法和表达方式编写,才能保证编写的程序在计算机中能正确地执行,同时也便于阅读和理解。

为了了解c语言的基本程序结构,我们先介绍几个简单的c程序。

这是一个最简单的c程序,其执行结果是在屏幕上显示一行信息:

run this is a sample of c program.

本程序的执行过程是:

程序从m a i n ( 处开始。

变量a代表一个整数,并且初始值为3。

执行程序(函数)p r o c ( 屏幕上显示h e l l o,\ n为转义字符,代表换行的意思。

执行程序(函数)f u n c ( 并将结果赋予a,此时,a的值为2。

屏幕上显示“this is a sample of c program.”。

程序执行的结果是在屏幕显示两行信息:

r u n

h e l l o .

this is a sample of c program.

程序中表示对程序的说明(称为注释),不参与程序的运行。注释文字可以是任意字符,如汉字、拼音、英文等。

本程序的功能是对从键盘输入的长方体的长、宽、高三个整型量求其体积的值。程序运行的情况如下:

r u n

v = 240

在本例中,m a i n函数在调用v o l u m e函数时,将实际参数x、y、z的值分别传送给v o l u m e函数中的形式参数a、b、c。经过执行v o l u m e函数得到一个结果(即v o l u m e函数中变量p的值)并把这个值赋给变量v。

从上面程序例子,可以看出c程序的基本结构。

c程序为函数模块结构,所有的c程序都是由一个或多个函数构成,其中必须只能有一个主函数m a i n ( 程序从主函数开始执行,当执行到调用函数的语句时,程序将控制转移到调用函数中执行,执行结束后,再返回主函数中继续运行,直至程序执行结束。c程序的函数是由编译系统提供的标准函数(如p r i n t f、s c a n f等)和由用户自己定义的函数(如p r o c、f u n c、v o l u m e等)。虽然从技术上讲,主函数不是c语言的一个成分,但它仍被看做是其中的一部分,因此,“m a i n”不能用作变量名。

函数的基本形式是:函数类型函数名(形式参数)形式参数说明;

数据说明部分;

语句部分;其中:函数头包括函数说明、函数名和圆括号中的形式参数(如int volume(a,b,c)),如果函数。

调用无参数传递,圆括号中形式参数为空(如void proc()函数)。形式参数说明指定函数调用传递参数的数据类型(如例1 . 3中语句int a,b,c;)。

函数体包括函数体内使用的数据说明和执行函数功能的语句,花括号表示函数体的。

开始和结束。

1.3.2 函数库和链接。

从技术上讲,纯粹由程序员自己编写的语句构成c语言程序是可能的,但这却是罕见的。因为所有的c编译程序都提供能完成各种常用任务的函数—函数库(如p r i n t f、s c a n f等)。c编译程序的实现者已经编写了大部分常见的通用函数。

当我们调用一个别人编写的函数时编译程序“记忆”它的名字。随后,“链接程序”把我们编写的程序同标准函数库中找到的目标码结合起来,这个过程称为“链接”。

保存在函数库中的函数是可重定位的。这意味着其中机器码指令的内存地址并未绝对地确定, 只有偏移量是确定的。当把程序与标准函数库中的函数相链接时,内存偏移量被用来产生实际地址。

有关重定位的详细内容,请查阅其他技术书籍。

编写程序时用到的函数,许多都可以在标准函数库中找到。它们是可以简单地组合起来的程序构件。编写了一个经常要用的函数之后,可将其放入库中备用。

1.3.3 开发一个c程序。

开发一个c程序,包括以下四步:

1) 程序设计程序设计亦称程序编辑。程序员用任一编辑软件(编辑器)将编写好的c程序输入计算机,并以文本文件的形式保存在计算机的磁盘上。编辑的结果是建立c源程序文件。

c程序习惯上使用小写英文字母,常量和其他用途的符号可用大写字母。c语言对大、小写字母是有区别的。关键字必须小写。

2) 程序编译编译是指将编辑好的源文件翻译成二进制目标**的过程。编译过程是使用c语言提供的编译程序(编译器)完成的。不同操作系统下的各种编译器的使用命令不完全相同,使用时应注意计算机环境。

编译时,编译器首先要对源程序中的每一个语句检查语法错误,当发现错误时,就在屏幕上显示错误的位置和错误类型的信息。此时,要再次调用编辑器进行查错修改。然后,再进行编译,直至排除所有语法和语义错误。

正确的源程序文件经过编译后在磁盘上生成目标文件。

3 ) 链接程序编译后产生的目标文件是可重定位的程序模块,不能直接运行。链接就是把目标文件和其他分别进行编译生成的目标程序模块(如果有的话)及系统提供的标准库函数链接在一起,生成可以运行的可执行文件的过程。链接过程使用c语言提供的链接程序(链接器)完成,生成的可执行文件存在磁盘中。

4) 程序运行生成可执行文件后,就可以在操作系统控制下运行。若执行程序后达到预期目的,则c程序的开发工作到此完成。否则,要进一步检查修改源程序,重复编辑—编译。

链接—运行的过程,直到取得预期结果为止。

大部分c语言都提供一个独立的开发集成环境,它可将上述四步连贯在一个程序之中。本书所涉及的程序全部在turbo c环境中进行。

1.3.4 c语言的关键字。

表1 - 2列举了3 2个关键字,它们与标准c句法结合,形成了程序设计语言c。

c语言的关键字都用小写字母。c语言中区分大写与小写,e l s e是关键字,“e l s e”则不是。在c程序中,关键字不能用于其它目的,即不允许将关键字作为变量名或函数名使用。

C语言的程序结构

1 基本程序结构 任何一种程序设计语言都具有特定的语法规则和规定的表达方法。一个程序只有严格按照语言规定的语法和表达方式编写,才能保证编写的程序在计算机中能正确地执行,同时也便于阅读和理解。为了了解c语言的基本程序结构,我们先介绍几个简单的c程序。这是一个最简单的c程序,其执行结果是在屏幕上显示一行...

C语言 循环结构程序设计

实验报告三。课程名称 c语言程序设计。实验项目名称 循环结构程序设计实验时间 班级姓名学号 t span cr r 11 实验目的 1.熟练while do while和for三种循环语句的应用。2 掌握三种循环语句使用的区别。实验环境 turbo c 2.0 win tc 实验内容及过程 1 编程...

C语言 循环结构程序设计

西安邮电大学。高级语言程序设计 实验报告。实验名称 循环结构程序设计。院系名称 通信与信息工程学院。专业名称通信工程。班级 1614班。学生姓名由鹏。学号 8位05162005 任课教师王西龙。实验时间 2017 年 6 月 25 日 一 实验目的及实验环境。1 掌握实现循环控制的三种语句 2 掌握...