2013-09-04 2 views
0

Мне удастся отобразить элементы диагонального массива, но не удалось отобразить элементы бездиагонального массива, которые я пробовал много, но безуспешно. Вот код, что я попробовать с Я использую Turbo C++ -Как отображать элементы недиагонального 2D-массива

#include<conio.h> 
#include<iostream.h> 
void accept(int a[4][4],int size) 
{ 
    cout<<"Diagonal One:"; 
    for (int i=0;i<size;i++) 
     for(int j=0;j<size;j++) 
if (i!=j) 
       cout<<"\n"<<i <<" "<<j<<" "<<a[i][j]; 
} 
void main() 
{ 
    int a[4][4]={{5,4,3,4},{6,7,9,1},{8,0,3,7},{2,4,5,9}}; 
    clrscr(); 
    accept(a,4); 
    getch(); 
} 

Пример: если содержание массива

5 4 3 4 
    6 7 9 1 
    8 0 3 7 
    2 4 5 9 

Выход через функции должны быть:

Выход также отображает некоторые из диагональных элементов.

ответ

1

Функция пропускает все элементы диагональной 5739 (i != j заботится об этом), но, на основе желаемых результатов, вы также хотите, чтобы пропустить все элементы в диагональном 4902.

также проверить на другой диагонали, заменить

if (i != j) 

с

if (i != j && i != size-j-1) 

Test.

Смежные вопросы