c语言求行和
Ⅰ c语言求矩阵各行元素之和
先用数组去存储矩阵里面的各个元素,然后获取数组的行数与列数,最后遍历数组中的值,累加以后可求得各行元素之和!
Ⅱ C语言 求矩阵各行各列的和
思路:求矩阵各行的和时,矩阵的行先不变,利用for循环依次遍历该行的每一列元素累加求和;求矩阵各列的和时,矩阵的列先不变,利用for循环依次遍历该列的每一行元素累加求和。
参考代码:
#include<stdio.h>
intSr(inta[3][5],intn)//求矩阵n行的累加和
{
inti,j,c=0;
for(j=0;j<5;j++)
c+=a[n][j];
returnc;
}
intSc(inta[3][5],intn)//求矩阵n列的累加和
{
inti,j,c=0;
for(i=0;i<3;i++)
c+=a[i][n];
returnc;
}
intmain()
{
inti,j,a[3][5]={1,3,5,7,9,2,4,6,8,10,3,5,8,7,6};
for(i=0;i<3;i++){
for(j=0;j<5;j++)
printf("%d",a[i][j]);
printf(" ");
}
printf("各行的累加和为: ");
for(i=0;i<3;i++)
printf("%d",Sr(a,i));
printf(" 各列的累加和为: ");
for(i=0;i<5;i++)
printf("%d",Sc(a,i));
return0;
}
/*
输出:
13579
246810
35876
各行的累加和为:
253029
各列的累加和为:
612192225
*/
Ⅲ 用C语言写一个输入三行三列数,求第一行之和。怎么写
#include<stdio.h>
intmain()
{
inta[3][3],i,j,sum=0;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
for(i=0,j=0;j<3;j++)
sum+=a[i][j];
printf("%d ",sum);
return0;
}
Ⅳ c语言 求矩阵每行元素之和
中间加的语句是:
for(i=0;i<m;i++)
row[i]=0;
for(i=0;i<m;i++)
for(j=0;j<n;j++)
row[i]+=a[i][j];
不过你的程序有问题,矩阵的行和列都不能超过6,否则出错。
Ⅳ 求用c语言求一个二维数组中每行的最大值和每行的和
#include<stdio.h>
intsum_n(int*p,intm) //求*p开始的m个元素的总和
{inti,s=0;
for(i=0;i<m;i++)
s+=*(p+i);
returns;
}
intmax_n(int*p,intm) //求*p开始的m个元素的最大值
{inti,max=*p;
for(i=1;i<m;i++)
if(*(p+i)>max)max=*(p+i);
returnmax;
}
intmain()
{intn,m,i,j,a[100][100];
scanf("%d%d",&n,&m); //读入n,m
for(i=0;i<n;i++) //读入n*m的二维数组
for(j=0;j<m;j++)
scanf("%d",&a[i][j]);
for(i=0;i<n;i++) //计算二维数组中n行每行m个数的最大值以及m个数和
printf("第%d行:最大值=%d 和=%d
",i,max_n(&a[i][0],m),sum_n(&a[i][0],m));
return0;
}
Ⅵ C语言:求矩阵中行和列的最值
#include<stdio.h>
int main()
{
int i,j,tem,m,n,a[500][500];
/*m表示行,n表示列*/
int rmax,cmax;
/*分别表示每行的最大值和每列的最大值*/
scanf("%d%d",&m,&n);
/*读入矩阵的行与列*/
for(i=0;i<m;i++)
for(j=0;j<n;j++)
scanf("%d",&a[i][j]);
/*读入矩阵*/
for(i=0;i<m;i++)
{
rmax=0;
for(j=0;j<n;j++)
if(a[i][j]>rmax) rmax=a[i][j];
printf("The max number of the %d row is %d\n",i+1,rmax);
/*输出每行的最大值*/
}
for(j=0;j<n;j++)
{
cmax=0;
for(i=0;i<m;i++)
if(a[i][j]>cmax)cmax=a[i][j];
printf("The max number of the %d column is %d\n",j+1,cmax);
/*输出每列的最大值*/
}
return 0;
}
/*
最小值的话,跟最大值一样原理,相信你会的,亲测可用,如有帮助请及时点赞
*/
Ⅶ C语言计算数列和行列
11 代码太乱了,从题目说明 到代码 完全搞不懂要干嘛。这个放弃
12 最终返回的是min,于是 这个min就是符合要求的,各行内最大值中的最小值。
于是 先对每行遍历,找出最大值。
[13]就是这个功能,于是填 max<a[row][col] 表示第row行的第col元素比max大,把它赋值给max
然后是[14] 这个就容是找出每个max中的最小值。于是填min>max
Ⅷ C语言:分别求各行各列及表中所有数之和
#include<stdio.h>
int main()
{
float a[3][3];
float sum1,sum2,sum;
int i,j;
sum=0;
float count=1;
for(i=0;i<3;i++) //初值
{
for(j=0;j<3;j++)
a[i][j]=count++;
}
for(i=0;i<3;i++) //输出
{
for(j=0;j<3;j++)
printf("%.2f\t",a[i][j]);
printf("\n");
}
printf("\n");
for(i=0;i<3;i++)
{
sum1=0;
sum2=0;
for(j=0;j<3;j++)
{
sum1+=a[i][j]; //各行之和
sum2+=a[j][i]; //各列之和
}
sum+=sum1+sum2;
printf("第%d行:",i);printf("%.2f:\t",sum1);
printf("第%d列:",i);printf("%.2f:\t",sum2);
}
printf("总和SUM=%.2f\n",sum);
return 1;
}
Ⅸ c语言矩阵求每行的和
#include<stdio.h>
intmain()
{
//如果没自有学过动态内存分配就这样写吧
inta[10][10],i=0,j=0,m,n,sum[10]={0};
printf("请输入行数与列数: ");
scanf("%d%d",&m,&n);
printf("请依次输入数据: ");
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
scanf("%d",&a[i][j]);
sum[i]=sum[i]+a[i][j];
}
}
for(i=0;i<m;i++)
printf("第%d行的和为:%d ",i+1,sum[i]);
}
如果学过动态内存分配,可以创建合适大小的数组。而这里是创建一个较大的数组。