Muestra la diagonal principal e invertida de una matriz

//****************************>
//-Victor De la Rocha
//-Algoritmia@groups.msn.com
//-www.myalgorithm.com
//-Jueves 28/OCT/04
//-Programa 5, Practica 10
//-Ciclos Vectores y Matrices
//-Programa que muestra la digonal invertida y la diagonal principal
// de una matriz
//****************************>
#include <stdio.h>
#include <conio.h>
//libreria con el prototipo de la funcion rand()
#include <stdlib.h>
void main(){
 //definicion de variables
 int filas,cols,c1,c2;
 int arreglo[100][100];
 randomize();//inicializa el generados de numeros aleatoreos
 clrscr();//limpiamos pantalla
 
 //-------------
 do{filas=rand()%6;}while(filas<=4);//damos numero aleatorio a la dimension del vector
 do{cols=rand()%4;}while(cols<=2);//damos numero aleatorio a la dimension del vector
 //-------------
 
 //simulamos la entrada de valores
 printf("filas: %dn",filas);
 printf("columnas: %dnn",cols);
 
 //-------------
 for(c1=1;c1<=filas;c1++){//ciclamos la asignacion y salida de datos en pantalla
   for(c2=1;c2<=cols;c2++){
     arreglo[c1][c2]=rand()%5;//asignamos valores aleatoreos
     printf("arreglo[%d][%d]= %dn",c1,c2,arreglo[c1][c2]);//salida en pantalla
    }//END cols
   printf("n");
  }//END filas
 //-------------
 
//diagonal principal
printf("Diagonal principaln");
for(c1=1;c1<=filas;c1++){
  printf("arreglo[%d][%d]= %dn",c1,c1,arreglo[c1][c1]);//salida en pantalla
 }
 
//diagonal invertida
printf("nDiagonal invertidan");
for(c1=filas;c1>=1;c1--) {
 printf("arreglo[%d][%d]= %dn",(filas-c1),c1,arreglo[(filas-c1)][c1]);//salida en pantalla
}
 
 
 getch();//esperamos una tecla
}//END void main 

filas: 5 columnas: 3 arreglo[1][1]= 1 arreglo[1][2]= 3 arreglo[1][3]= 1 arreglo[2][1]= 0 arreglo[2][2]= 4 arreglo[2][3]= 1 arreglo[3][1]= 1 arreglo[3][2]= 3 arreglo[3][3]= 2 arreglo[4][1]= 0 arreglo[4][2]= 1 arreglo[4][3]= 3 arreglo[5][1]= 2 arreglo[5][2]= 3 arreglo[5][3]= 1 Diagonal principal arreglo[1][1]= 1 arreglo[2][2]= 4 arreglo[3][3]= 2 arreglo[4][4]= 0 arreglo[5][5]= 0 Diagonal invertida arreglo[0][5]= 0 arreglo[1][4]= 0 arreglo[2][3]= 1 arreglo[3][2]= 3 arreglo[4][1]= 0

¿Has encontrado algún error? ¿Tienes la solución? Dejame tu correción ;-)

Antes de comentar: Gran parte de los ejercicios propuestos no tienen librerías debido a que Wordpress las eliminó al verlas como etiquetas HTML. Si sabes/tienes/conoces las librerías que hacen falta, déjalo en los comentarios. Y lo mas importante: Todos los ejemplos fueron realizados por personas con únicamente conocimiento básico del lenguaje, no de programación.

Otro punto importante: Si vas a sugerir un segmento de código en algún lenguaje debes hacerlo así:

  • Si es lenguaje C [c]Código en C[/c]
  • Si es lenguaje Pascal [pascal]Aquí dentro el código de Pascal[/pascal].

De esta manera el código coloreas el código.

Otro punto importante para muchos que sienten que se les ignora: Todos los comentarios los reviso y en su debido momento los apruebo, pero ojo con el con lo siguiente:

Me reservo el derecho de alterar, publicar o no los comentarios as´ como cambiar mis condiciones en el momento que así lo requiera.

¿estas de acuerdo? entonces adelante que ya te he quitado bastante tiempo leyendo esta basura de advertencias :)