输入一个5×4的二维数组,求各行元素之和,并将这些和按从小到大排列输出!

如题所述

第1个回答  2012-12-03
以下程序仅供参考:
//输入一个5×4的二维数组,求各行元素之和,并将这些和按从小到大排列输出
#include<stdio.h>
#define ROW 5
#define COL 4

void sum(int a[][COL+1],int r,int c)
{
for(int i=0;i<r;i++)
{
a[i][0]=0;
for(int j=1;j<c;j++)
a[i][0]+=a[i][j];
}
}
void paixu(int a[],int r)
{//直接插入排序
int t,j;

for(int i=1;i<r;i++)
{
t=a[i];
j=i-1;
while(t<a[j])
{
a[j+1]=a[j];
j--;
}
a[j+1]=t;
}
}

void main()
{
int a[ROW][COL+1],temp[ROW];
printf("输入二维数组的值:\n");
for(int i=0;i<ROW;i++)
for(int j=1;j<=COL;j++)
scanf("%d",&a[i][j]);
for(i=0;i<ROW;i++)
{
for(int j=1;j<=COL;j++)
printf("%d\t",a[i][j]);
printf("\n");
}

sum(a,ROW,COL+1);
for(i=0;i<ROW;i++)
{
for(int j=0;j<=COL;j++)
printf("%d\t",a[i][j]);
printf("\n");
}
for(i=0;i<ROW;i++)
{
temp[i]=a[i][0];
printf("%d\t",temp[i]);
}
paixu(temp,ROW);
printf("\n各行元素之和从小到大:\n");
for(i=0;i<ROW;i++)
printf("%d\t",temp[i]);

}本回答被提问者和网友采纳

输入一个5行5列的二维数组,计算四周元素之和
int main(){ int i,j,sum=0,matrix[5][5];for(i=0;i<5;i++)for(j=0;j<5;j++){ scanf("%d",&matrix[i][j]);if(i==0||i==4||j==0||j==4)sum+=matrix[i][j];} printf("%d\\n",sum);return 0;}

c语言 输入一个4×5的二维数组的值,输出其中行号和列号和为k的数
include <stdio.h> include <stdlib.h> define M 5 define N 6 \/\/0元素不用,浪费空间了 int main(){ \/\/在手机上写的,不分模块了 int i,j;double marD[M][N];\/\/录入矩阵 for(i=1;i<M;i++ )for(j=1;j<N;j++ ){ printf("input (%d,%d):",i,j);scanf("%lf",&marD...

求C语言解答过程
row_sum[1]+=a[1][j];} 求其它行元素之和与这相同,总共有5行,那么再做一个外层循环,分别求出5行之和:for(i=0; i<5; i++){ for(j=0; j<4; j++){ row_sum[i]+=a[i][j];} } <3>将这些和按从小到大顺序输出 这里就是对行和数组里面的元素进行比较,然后从小到大的...

编写一个五行五列的二维数组每一行与每一列元素之和的vb程序
Private Sub Command1_Click()Dim a(6, 6) As Integer Randomize For i = 1 To 5 '生成5*5数组 For j = 1 To 5 a(i, j) = Int(Rnd * 10)Next j Next i For i = 1 To 5 '求每行每列的和 For j = 1 To 5 a(i, 6) = a(i, 6) + a(i, j)a(6, j) ...

输入一个二维数组,分别统计各行元素之和并输出统计的结果。
using namespace std;int main(){ int array[100][100];int a,b,i,j,sum=0;cout<<"输入数组的行和列:"<<endl;cin>>a>>b;cout<<"输入数组元素:"<<endl;for(i=0;i<a;i++)for(j=0;j>array[i][j];for(i=0;i<a;i++){ for(j=0;j<b;j++)sum+=array[i][j];cout...

一个5行5列的二维数组中,找出这样的元素,,它所在的行的所有元素之和等...
if(i>=j) printf();下左边面的三角 if(i+j>=4) printf();下右边的三角

c++输入一个5行5列的二维数组,求最大值和最小值其对应行列的位置...
min_col=j+1;} } for(i=0;i<4;i++)sum+=array[i,i];Console.WriteLine("最大数为:{0},位置是:第{1}行,第{2}列",max,max_row,max_col);Console.WriteLine("最小数为:{0},位置是:第{1}行,第{2}列",min,min_row,min_col);Console.WriteLine("对角线上的元素之和为:{...

c++:求一个5行3列二维数组每行元素的和,并将球得的和按由小到大的次序...
include <stdio.h> void main(){ int a[5][3],dst[5]={0};int i,j,t;for(i=0;i<5;i++)for(j=0;j<3;j++)scanf("%d",&a[i][j]);for(i=0;i<5;i++)for(j=0;j<3;j++)dst[i]+=a[i][j];for(i=0;i<4;i++)for(j=i;j<4;j++)if(dst[j]>dst[j+1]...

c语言输入一个二维数组,找出每行的最大值输出?
下面是实现输入一个二维数组,找出每行的最大值输出的C语言代码:include <stdio.h> define ROW 3 define COLUMN 4 int main() { int arr[ROW][COLUMN];\/\/ 输入二维数组 printf("请输入二维数组(%d行%d列):\\n", ROW, COLUMN);for (int i = 0; i < ROW; i++) { for (int j ...

Java找出4×5矩阵中值最小和最大元素,并分别输出其值及所在的行号和序号...
1、打开电脑上的eclipse软件,配置好jdk的。2、点击左上角的file,点击new,点击Javaproject。3、新建一个class文件,自己取名字,勾引main选项,自动调用main方法。4、输入代码。5、控制台会出现6 2 9 15 1 5 18 7 20 。

相似回答