在fun函数中的i只能在fun函数中使用
main中的i只能在main函数中使用
其中main函数是把b数组的首地址给过去了
fun(b,N);
然后fun函数中的a数组就是接着b数组的地址,并没有新建地址来存放形式参数
应该是要求保留两位小数才对。若是“保留两位有效数字”,等于是四舍五入到整数(因为原来的数的平均数,基本都是大于10的。
#include
float av(int a[])
{int s=0,max=a[0],min=a[0],i;
for(i=0;i<10;i++)
{s+=a[i];
if(a[i]>max)max=a[i];
if(a[i] } return (s-max-min)/8.0; } int main() { int i,a[10]; for(i=0;i<10;i++) scanf("%d",&a[i]); printf("%.2f\n",av(a)); return 0; }
你是要换a[i]和a[p+i]吗?for循环里面a[p+1]=t写错了,应该是a[p+i]=t
在你的程序里面,i是局部变量,作用域就是它所在的函数;不过你的程序中两个函数在用到i时都首先对i赋值0,提为全局变量也是不影响的