简单概述C程序及关键函数

2017-05-04 18:22徐连杰张建王睿
艺术科技 2016年12期
关键词:数据类型数组C语言

徐连杰+张建+王睿

摘 要:随着电子计算机的迅速发展和广泛应用,C程序设计语言在计算机软件开发中的作用日益显著。C语言是目前世界上流行且使用得非常广泛的结构化的高级程序设计语言。C语言是1972年由贝尔实验室的Dennis Ritchie在B语言的基础上开发出来的。最初的C语言是作为UNIX操作系统的开发语言而被人们认识,它以最简易的方式编译、使用低级处理存储器以及进行少量的代码编写;而且其也是在任何环境下都能运行的通用计算机编程语言。本文从C程序的设计入手,简单介绍C语言的函数用法。

关键词:C语言;C++;函数

1 C程序的设计过程

1.1 程序设计

C语言是适合于面向过程的程序设计,主要设计思路是自顶向下、逐步细化;规划好程序的设计方法,由顺序结构、选择结构、循环结构三种基本结构进行描述。

1.2 程序编写

用C语言代码表示算法的过程就是C程序的编写过程。编写好源程序后输入到计算机中,生成源代码程序文件。当C程序的算法简单时,可以编写一个由主函数构成的简单程序;当C程序的算法复杂时,可以编写一个由主函数及若干子函数构成的程序。因此,函数是C程序的基本组成单位。

下面是一个简单C语言程序:

#include

Main()

{

Printf(“Hello,everyone!\n”);

}

该程序是由一个主函数组成的简单算法,其运行的结果是Hello,everyone!基本所有的C程序都基于最简单的程序,然后不断添加子函数,使用各种函数功能而实现。

1.3 上機实现

C程序的上机实现过程就是编译、调试和运行过程,从而可以实现上机操作。

1.4 C程序结构特点

C语言程序整体是由一个或多个称为函数的模块构成的。每个函数都具有对应的功能,函数之间存在着相对明显的界面,从而使程序具有清晰的模块结构。正因为C语言程序的结构特点,提高了软件开发的效率,改善了软件质量。这也从整体上体现了C语言的普遍性及实用性。

2 C语言中函数的介绍及使用

2.1 函数的定义

函数的定义就是编写完成函数功能的模块。通常C函数由一个主函数和若干子函数组成,而主函数是程序执行的起始点,用于调用其他子函数;子函数还可以调用别的子函数,通过调用关系可以实现复杂的C程序。我们所使用的函数包括两种,即标准库函数和用户自定义函数。标准库函数是C系统定义好的放在标准库中以直接供用户使用的函数;用户自定义函数是专门用于解决自己的问题所编写的。函数的定义格式一般如下:

类型名 {函数名(形参列表)

(定义变量

语句序列)}

从格式可以看出,函数的定义主要由函数名和用大括号{}包围的函数体两部分构成。函数名的小括号()中无论有无参数,都不能省略。当函数带有多个形式参数时,圆括号中的形式参数要用逗号相隔,并在大括号前说明它的数据类型。

2.2 函数的说明和调用

在一个函数中需要调用另一个函数时,程序控制就从调用函数转到被调函数中去,并且从被调用的函数体起始位置开始执行该函数的语句。在执行完后,或者遇到return语句时,程序就控制返回调用函数原来的断点继续执行。一般在调用一个函数时,需要说明该函数的存储类型和数据类型,这称为函数的说明。函数的说明存在于程序的说明部分,它既可以在函数的内部,也可以存在于函数的外部说明部分。C语言规定,如果一个调用函数发生在该函数的定义之前,则在调用前必须对该函数说明。目前函数说明格式两种,一是存储类型,数据类型,函数名(形式参数数据类型及参数名);二是存储类型,数据类型,函数名(形式参数数据类型)。

下面来分析一下函数在调用时常见的问题,如参数的使用。在调用一个函数时,必须使用有实际值的量作函数的参数,称之为函数的实参。实参数的个数和顺序必须与函数定义中形式参数保持一致;此外,数据类型必须与相应的形式参数保持一致。总体来说,在程序调用执行中,随着程序控制作用的转移,实参数的值被赋予了相应的形式参数,而参数的值可以看作是对参数初始化的初值。

2.3 函数的应用举例

函数的应用大而广之,在本文中无法对函数的各种功能进行一一说明。只能简单地介绍一下函数的使用和引导。因此,下面简单列举一个例子进行分析,以更加真实地感受一下函数的强大功能。例如,数组在函数间的传递。

数组是由多个数据组成的集合体,在C语言程序中经常需要把数组的数据传递到函数中进行处理。我们常采用地址传送方式进行处理,把数组的存储首地址作为实参调用函数;在被调用的函数中,以指针变量作为形式参数接收数组的首地址;当该指针被赋予数组的首地址后,就指向了数组的存储空间。下面以求数组的平均值的函数具体说明。

Float mean(int *data,int num)

{

Int I;

float avg;

for(avg=0,i=0;i

avg+=*data;

avg/=num;

return(avg);

}

该函数是求数组中所有数据的平均值,体现了处理数组的函数的特性。其中最重要的就是处理数组的函数的形式参数必须有接收数组地址的指针。如上面data形式参数。此外,还经常有一个形式参数用于接收数组的大小,如num。在上面的main函数中,指针data接收数组地址后,就指向了数组的存储空间;在程序中使用for循环,通过指针data的变化逐次访问数组的各个元素,并把元素的值累加;变量num控制循环次数;全部累加元素和除以数据个数num就得到了平均值。

在最近20年里,C语言已经成为一种最重要的、最流行的程序设计语言。不管是在哪种编程软件中,都是一种不可或缺的编程语言。C语言的简单性和易使用性让编程者能够更快、更好地使用;C语言是一种融入控制功能的新式语言,它的设计使得用户自然而然地去采用自顶而下的、结构化的设计原则;C语言程序中所包含的各种函数更是极大地方便了用户,能够快速地利用编程实现复杂的算法;C语言的效率很高,能够充分地发挥当代计算机各方面的效能。

参考文献:

[1] 张桃红,彭珍,杨炳儒,谢永红.“C程序设计”课程的KM教学法研究[J].计算机教育,2010(02):113-115+101.

[2] 杨俊生,张润.基于计算思维的“C程序设计”案例设计初探[J].工业和信息化教育,2013(06):65-69+64.

[3] 孙玲. C程序逻辑思维训练支持系统构建与应用[D].山西师范大学,2014:105-107.

猜你喜欢
数据类型数组C语言
JAVA稀疏矩阵算法
详谈Java中的基本数据类型与引用数据类型
基于Visual Studio Code的C语言程序设计实践教学探索
JAVA玩转数学之二维数组排序
如何理解数据结构中的抽象数据类型
基于C语言的计算机软件编程
Excel数组公式在林业多条件求和中的应用
高职高专院校C语言程序设计教学改革探索
寻找勾股数组的历程
论子函数在C语言数据格式输出中的应用