【1701H1】【穆晨】【171021】连续第十一天总结

来源:互联网 发布:淘宝一件代发是真的吗 编辑:程序博客网 时间:2024/05/25 23:59

任务:程序举例

统计二维数组中所有元素的平均值,并将二维数组中小于

平均值的元素存储到一维数组中,同时输出这些元素及其个数。

#include<iostream.h>
#define M 3                                               //定义M一直为3
#define N 4                                               //定义N一直为4
float ave(int a[][N],int n)                             //a是指向一维数组的指针变量,就是行指针,n为a所指向的二维数组的行数
{
float sum=0;                                       
for(int i=0;i<n;i++)
for(int j=0;j<N;j++)
sum+=a[i][j];
return sum/(n*(N));                   //此函数目的求平均数,数组元素的总和除以数组元素的个数
}
int fun(int(*p)[N],int n, int *b)                    //形参分别为指向一维数组的指针变量、整型变量、元素指针
{
float average=ave(p,n);
cout<<"二维数组中元素的平均值为:"<<average<<endl;
int k=0;
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
if(p[i][j]<average){
*(b+k)=p[i][j];
k++;
}
return k;                                 //找出小于平均数的元素
}
void main()
{
int num[M][N]={{1,10,20,30},{20,15,10,5},{3,6,9,12}};
int c[(M)*(N)];
int count=fun(num,M,c);
cout<<"二维数组中的元素为:"<<endl;
for(int i=0;i<M;i++){
for(int j=0;j<N;j++)
cout<<num[i][j]<<'\t';
cout<<'\n';
}
cout<<"小于平均值的元素为:"<<endl;
for(i=0;i<count;i++){
cout<<c[i]<<'\t';
if((i+1)%5==0)cout<<'\n';
}
cout<<endl;
cout<<"count="<<count<<endl;
}


阅读全文
0 0
原创粉丝点击