从变量的作用域(即从空间)的角度来观察,变量可以分为全局变量和局部变量
局部变量
⒈ 在一个函数内部定义的变量。只在本函数范围内有效,也就是说只有在本函数内才能引用它们,在此函数以外是不能使用这些变量的。
⒉ 在复合语句内定义的变量。只在本复合语句范围内有效,只有在本复合语句内才能引用它们。在该复合语句以外是不能使用这些变量的。
全局变量
程序的编译单位是源程序文件,一个源文件可以包含一个或若干个函数。在函数内定义的变量是局部变量,而在函数之外定义的变量称为外部变量,外部变量是全局变量(也称全程变量)。全局变量可以为本文中其他函数所共用。它的有效范围为从定义变量的位置开始到本源文件结束。
在一个函数中即可以使用本函数中的局部变量,也可以使用有效的全局变量。
说明:设置全局变量的作用是增加了函数间数据联系的渠道。由于同一文件中的所有函数都能引用全局变量的值,因此如果在一个函数中改变了全局变量的值,就能影响到其他函数中全局变量的值。相当于各个函数间有直接的传递通道。由于函数的调用只能带回一个函数返回值,因此有时可以利用全局变量来对增加函数间的联系渠道,通过函数调用能得到一个以上的值
为了便于区别全局变量和局部变量,在C程序设计人员中有一个习惯(但非规定),将全局变量名的第1个字母用大写表示。
/*有一个一维数组,内放10个学生成绩,写一个函数当主函数调用此函数后,能求出平均分、最高分和最低分*/
#include <stdio.h>
#include <math.h>
float Max,