这些问题几乎总结了它。这是我到目前为止有:基于C++中每一行的总和来排列二维数组
#include "stdafx.h"
#include <iostream>
using namespace std;
int main()
{
int sum1;
int sum2;
int sum3;
int sum4;
int sum5;
int sum6;
int sum7;
int sum8;
int a[8][7] = {
{ 2, 4, 3, 4, 5, 8, 8 } ,
{ 7, 3, 4, 3, 3, 4, 4 } ,
{ 3, 3, 4, 3, 3, 2, 2 } ,
{ 9, 3, 4, 7, 3, 4, 1 } ,
{ 3, 5, 4, 3, 6, 3, 8 } ,
{ 3, 4, 4, 6, 3, 4, 4 } ,
{ 3, 7, 4, 8, 3, 8, 4 } ,
{ 6, 3, 5, 9, 2, 7, 9 }
};
for(int i = 0; i < 8; i++) {
}
}
我打算在分配每个值从SUM1总和sum8到一排,然后通过其总和订购的每一行,并显示给用户。
但是,我一直卡住,找不到任何好的文档。任何人都可以帮我写一个有效的函数,我可以在我的for循环中循环添加每一行到一个总和,然后返回总和和平均所有行? (这可能将不得不不止一个功能,但...不管。)
真的吗?你找不到一个好的文档?那么你在看什么文件? –
如果我理解正确,对于每一行你想要的总和和平均值。所以,就像'a'一样,'sum'也可以是一个数组''int sum [8]'。然后,在你显示的'for'里面,对于数组中的每一行,你都可以计算出该行的总和(使用另一个),并将值保存在变量sum [i]上。之后,由于您知道每行的总和,因此可以通过除以列的数量(8)来计算平均值。如果你想根据总和进行排序,我会建议使用'std :: vector'矢量和'std :: sort'方法来定制'compare'方法。 – wendelbsilva
进入'std :: vector>',使用'std :: sort'和一个lambda表达式,在这个lambda表达式中你用'std :: accumulate'计算两个和并比较它们。完成。 –