這些問題幾乎總結了它。這是我到目前爲止有:基於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'計算兩個和並比較它們。完成。 –