Quando procuramos em uma matriz 3x3 a sua diagonal principal estamos falando da diagonal que é iniciada do canto superior esquerdo e desce até o canto inferior direito.
A regra para um algoritmo que deve imprimir a diagonal principal é a seguinte, na diagonal principal os elementos tem o mesmo índice tanto em linha quanto em coluna.
Veja o exemplo abaixo:
Obs.: Não esqueça de preencher corretamente as linhas das bibliotecas da linguagem C, "As linhas dos includes".
#include
#include
int main(int argc, char *argv[])
{
int matriz[3][3];
int x,y;
printf("Digite os numeros:\n");
for(x=0;x<3;x++)
{for(y=0;y<3;y++)
{scanf("%d",&matriz[x][y]);}// neste bloco preenchemos a matriz
}
printf("valores da matriz:\n");
for(x=0;x<3;x++)
{printf("\n");
for(y=0;y<3;y++)
{ printf("%d\t",matriz[x][y]); }// neste bloco vamos imprimir a matriz
}
printf("\nDiagonal principal\n");
/*No bloco de comandos abaixo vamos imprimir a matriz novamente mas
com um IF dentro do comando FOR, esse IF compara os valores de
linha e coluna se forem iguais os valores serão impressos na tela */
for(x=0;x<3;x++)
{
for(y=0;y<3;y++)
{ if(x==y)
printf("%d\t",matriz[x][y]);
}
}
printf("\n");
system("PAUSE");
return 0;
}