12:第12题 以下程序定义了n×n的二维数组,同时在主函数中赋值.请编写函数fun,函数的功能使求出数组周边元素的平均值同时做为函数值返回给主函数中的s.
答案:
double fun(int w[][N])
{
int I,j,k=0;
double s=0.0;
for(j=0;j<N;j++)
{
s+=w[0][j];
k++;
}
for(j=0;j<N;j++)
{
s+=w[N-1][j];
k++;
}
for(i=1;i<=N-2;i++)
{
s+=w[i][0];
k++;
}
for(i=1;i<=N-2;i++)
{
s+=w[i][N-1];
k++;
}
return s=k;
}
13:第13题 请编写一个函数void fun(int tt[m][n],int pp[n]),tt指向一个m行n列的二维函数组,求出二维函数组每列中最小元素,同时依次放入pp所指定一维数组中.二维数组中的数已在主函数中赋予.
答案:
void fun(int tt[M][N],int pp[N])
{
int I,j,min;
for(j=0;j<N;j++)
{
min=tt[0][j];
for(i=0;i<M;i++)
{
if (tt[i][j]<min)
min=tt[i][j];
}
pp[j]=min;
}
}
14:第14题 请不写函数fun,函数的功能使求出二维数组周边元素之和,做为
函数值返回.二维数组中的值在主函数中赋予.
答案:
int fun(int a[M][N])
{
int I,j,s=0;
for(j=0;j<N;j++)
{
s+=a[0][j];
s+=a[M-1][j];
}
for(i=1;i<=M-2;i++)
{
s+=a[i][0];
s+=a[i][N-1];
}
return s;
}
15:第15题 请编写一个函数unsigned fun(unsigned w),w使一个大于10的无符号整数,如果w使n(n≥2)位的整数,那么函数求出w后n-1位的数做为函数值返回.
答案:
unsigned fun(unsigned w)
{
unsigned t,s=0,s1=1,p=0;
t=w;
while(t>10)
{
if(t10)
p=t%10;
s=s+ps1;
s1=s110;
t=t10;
}
return s;
}