i int i; float aver, sum=arraylo for(i=1;i<10;i++) sum=sumtarray i aver=sum/10 return(aver); 8.5变量性质及存储属性 851变量性质 变量可以在程序中三个地方说明:函数内部、函数的参数定义中 或所有的函数外部。根据所定义位置的不同,变量可分为局部变量、 形式参数和全程变量 1局部变量 在函数内部定义的变量,只有在函数内才能引用,而函数外不 能使用这些变量。函数的形式参数也是属于局部变量。 例9:# include< stdio h> void f( void) main i int x printf("x in maino is %dIn,X) f0; printf( x in main( is still %od n, x) void f( void) int x X=100 printf(" the x in fO is %dn, x) 说明:不同函数定义的变量名可以相同,它们分配的内存单元 不同,是不同意义的变量 2.全局变量 全局变量是指在所有函数之外说明的变量,它在整个程序内部 者是"可见的",可以被任何一个函数使用,并且在整个程序的运行中 都保留其值。习惯上通常在程序的主函数前说明。 例10 #include <stdio h> *定义全程变量* void f1(intx, float y);,/*子函数说明* void f2(void) /*子函数说明*{ int i; float aver,sum=array[0]; for(i=1;i<10;i++) sum=sum+array[i]; aver=sum/10; return(aver); } 8.5 变量性质及存储属性 8.5.1 变量性质 变量可以在程序中三个地方说明: 函数内部、函数的参数定义中 或所有的函数外部。根据所定义位置的不同, 变量可分为局部变量、 形式参数和全程变量。 1.局部变量 在函数内部定义的变量,只有在函数内才能引用,而函数外不 能使用这些变量。函数的形式参数也是属于局部变量。 例 9:#include<stdio.h> void f(void); main() { int x; x=10; printf(“x in main() is %d\n”,x); } f(); printf(“x in main() is still %d \n”,x); } void f(void) {int x; x=100; printf(“the x in f() is %d\n”,x); } 说明:不同函数定义的变量名可以相同,它们分配的内存单元 不同,是不同意义的变量。 2.全局变量 全局变量是指在所有函数之外说明的变量, 它在整个程序内部 者是"可见的", 可以被任何一个函数使用, 并且在整个程序的运行中 都保留其值。习惯上通常在程序的主函数前说明。 例 10: #include <stdio.h> int test; /*定义全程变量*/ void f1(int x, float y); /*子函数说明*/ void f2(void); /*子函数说明*/