A. c语言编程求二维数组当中各行求平均值......怎么编程啊
你这个需要两个循环吧!
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{ sum=a[i][j];
}
b[i]=sum/n;
}
思路应该是这样,用一个数组来接收每行的平均值,最后你在把它输出来就好了!
B. c语言编程求找错:求二维数组每行元素的平均值。要求用函数和指针实现)
直接用a[i][j]最简单,注意s必须每次置零。
非要用指针的话,应该用一个指向数组的指针,而不是一个装了指针的数组;
/*求二维数组每行元素的平均值。(要求用函数和指针实现)*/
#include<stdio.h>
voidfun(inta[3][4])
{
int(*p)[4],i,j;
floatave,s;
for(i=0;i<3;i++)
{
p=&a[i];
s=0;
for(j=0;j<4;j++)
s+=(*p)[j];
ave=s/4;
printf("第%d行元素的平均值为%f ",i,ave);
}
}
intmain()
{
inta[3][4],i,j;
printf("请输入二维数组 ");
for(i=0;i<3;i++)
for(j=0;j<4;j++)
scanf("%d",&a[i][j]);
fun(a);
return0;
}
C. C语言中,求二维数组的每一行的和与平均值
#include<stdio.h>
#include<string.h>
intmain()
{
inti=0,j=0,total=0;
floatavr=0;
inta[3][3]={{1,2,3},{4,5,6},{7,8,9}};
for(i=0;i<3;i++)
{
total=0;
for(j=0;j<3;j++)
{
total+=a[i][j];
}
avr=(float)(total/3.0);
printf("sum[%d]aver[%.2f] ",total,avr);
}
return0;
}
sum[6]aver[2.00]
sum[15]aver[5.00]
sum[24]aver[8.00]
Pressanykeytocontinue
D. c语言 二维数组求平均值
很简单的问题啊,注意控制好循环就好了
要使用子函数,好像要是不用指针的话,只能全局变量。
E. 求C语言编程:调用函数计算二维数组所有元素的平均值
两个for循环
记录二维数组的总值
count+=array[i][j]
key记录数组元素个数
key++;
最后
return
count/key
或:
double avg(int x[10][10])
{
int i,j,sum;
for(i=0;i<10;i++)
{
for(j=0;i<10;j++)
sum+=x[i][j];
}
return sum/((i+1)*(j+1));
}
(5)c语言求多位数组平均值扩展阅读:
函数作为另一个函数调用的实际参数出现。这种情况是把该函数的返回值作为实参进行传送,因此要求该函数必须是有返回值的。例如: printf("%d",max(x,y)); 即是把max调用的返回值又作为printf函数的实参来使用的。在函数调用中还应该注意的一个问题是求值顺序的问题。
F. 用C语言求二维数组所有元素的平均值并输出
由于没给出详细的问题,我就用三维数组做了一下,其实题目很简单,直接用for-for的双重循环实现就可以了。首先是二维数组的输入,然后就是求和,求平均值。
思想有了,做其他的就很简单了,相信楼主会完成的o(∩_∩)o
【代码实现】
#include<stdio.h>
int main()
{
int i,j,a[3][3];
int sum=0;
float avg;
printf("请输入一个二维数组:\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
}
for(i=0;i<3;i++)
for(j=0;j<3;j++)
sum+=a[i][j];
printf("%d",sum);
avg=sum/6.0;
printf("元素的平均值为%f",avg);
}
G. C语言二维数组求平均值
由于整数的平均值也应该是浮点值,所以a[i][N]=sum/N;这样不行。建议你把a数组和sum都声明为浮点型。
a[M][j]=sum/M;逻辑有错。题目似乎是要求列平均值,应该另想办法,不能兼用i、j以及sum了。
改后代码如下:
#defineM4
#defineN6
intmain(intargc,char*argv[]){
doublea[M+1][N+1],sum=0;
inti,j;
for(i=0;i<=N;a[M][i++]=0);//加这一行列平均值初值赋0
for(i=0;i<M;i++){
sum=0;
for(j=0;j<N;j++){
scanf("%lf",&a[i][j]);
sum+=a[i][j];
a[M][j]+=a[i][j];//增加这一行求列和
}
a[i][N]=sum/N;
//a[M][j]=sum/M;
}
for(i=0;i<N;a[M][i++]/=M);//增加这一行求列平均值
for(i=0;i<M+1;i++){//有改
for(j=0;j<N+1;j++)
printf("%.1f ",a[i][j]);//有改
printf(" ");
}
H. c语言求一个二维数组各列元素的平均值,并将所求得的平均值按顺序存入一个一维数组中,
只用一个二重的循环就可以实现把二维数组的值按列求出平均值,并且存放到一维数组中。然后再输出。
#include<stdio.h>
int main()
{ int i,j,a[4][5]= {{12,20,30,25,52},{36,65,22,26,60},
{70,54,12,14,6},{2,7,8,12,15}
};
float b[5]= {0};
for(i=0; i<4; i++)
{ for(j=0; j<5; j++)
{ b[j]+=a[i][j];
printf("%4d",a[i][j]);
}
printf(" ");
b[j]/=5;
}
for(j=0; j<5; j++)
printf("%g ",b[j]);
return 0;
}
I. c语言用二维数组求平均值
h赋个初值0再试试。
vc6.0貌似对未初始化的局部变量不报错。