2015-02-23 73 views
-3

我需要幫助din添加2列的元素。 出2列應該是2(bcos 1 + 1)。添加每個單元格的值(sum = 2)。如何添加列的元素。循環應該下移列,並添加值C++如何在二維數組的列中添加元素

#include <iostream> 
#include <fstream> 
#include <iomanip> 
#include <string> 
#include <cctype> 
#include <cstring> 
#include <cstdio> 
#include <cstdlib> 

using namespace std; 

int main() 
{ 
    char text[6][6]; 
    ifstream stream1("c:\\cpptestdata.txt"); 

    if(!stream1) 
    { 
     cout<<"Cannot read file\n"; 

    } 

    while(!stream1.eof()) 
    { 
     for(int i=0; i<6; i++) 
     { 
      for(int j=0; j<6; j++) 
      { 
       stream1>>text[i][j]; 
      } 

     } 

    } 
//checking if it has been correctly inserted. 
for(int i=0; i<6; i++) 
    { 
     for(int j=0; j<6; j++) 
     { 
      cout<<text[i][j]<<"\t"; 

     } 
     cout<<"\n"; 

    } 
cout<<"first two rows:"<<endl; 
int i,j; 
for (i=0; i<2; i++){ 
for (j=0; j<6; j++){ 
      std::cout<<text[i][j]<<"\t"<<' '; 

      }cout<<endl; 
} 
cout<<"find immediate neighbours of A:"<<endl; 
char largest=text[1][1]; 
for(i=0; i<6; i++){ 
    for(j=1; j<2; j++){ 
     if(text[i][j]>largest) 
      cout<<text[i][0]<<"N"<<"\t"; 
     else 
     cout<<"0"; 


}cout<<endl; 
} 
     cout <<" finding k neighbours for A : "<<endl; 

     for (i=1; i<6; i++){ 
     int max = text[1][1]-'0'; 
    for(j = 1; j<2; j++){ 
      if(max < (text[i][j]-'0')){ 
       max = text[i][j]-'0'; 
       cout<<max; 
      } 
      else 
       cout <<"xx"; 
     }cout<<endl; 
} 


     return 0; 
    } 
+0

你的問題不是很清楚,改進它。如果可能的話,還向我們展示一個例子以及您期望做什麼(您的預期答案是什麼)以及您使用當前代碼獲得的結果。 – 2015-02-23 10:39:09

+0

您是否嘗試在代碼中實現它?問題和發佈代碼之間的關係是什麼? – Jackzz 2015-02-23 11:14:06

回答

1

一般來說,如果您要訪問的列c你寫的是這樣的:

for (int i = 0; i < 6; ++i) { 
    // access column c with text[i][c] 
} 
+0

@ ArunA.S i ++和++ i都將i的值增加1.請參閱http://stackoverflow.com/questions/24886/is-there-a-performance-difference-between-i-andi-i- in-c和http://stackoverflow.com/questions/24853/what-is-the-difference-between-i-andi-i – 2015-02-23 13:13:05

0

下面的代碼寫入添加元素假設您的代碼中包含以下內容:

  1. 它是一個6x6陣列。
  2. 而不是整數數組,您使用的是字符數組。 (我不明白這需要)。

    cout << "sum of elements\n"; 
    int sum = 0; 
    for(i=0;i<6;i++) 
    { 
    
        sum = sum + (text[i][2] - '0'); //Convert char to int and add 
        cout <<" SUM = "<<sum<<"\n"; 
    } 
    

如果沒有特殊原因,定義數組爲int陣列本身。然後你可以直接添加值。

for(i=0;i<6;i++) 
{ 

    sum = sum + text[i][2]; 
    cout <<" SUM = "<<sum<<"\n"; 
} 
相關問題