Salve a tutti, 
stavo scrivendo un programma  per determinanare se la matrice è quadrata e in caso affermativo stabilire  se è diagonale cioè quando gli elementi della diagonale sono uguali a uno e il resto è zero. Mi potete dare un mano per poterla scrivere? non capisco da dove poter partire 
#include <iostream>
#include <cstdlib>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
 
int main(int argc, char** argv) {
const int MAXR=40;
const int MAXC=40;
double matrice[MAXR][MAXC];
int r;
int c;
int somma;
int diagonale;
cout << "matrice " << endl;
 cout << "inserire il numero delle righe " << endl;
 cin >> r;
 
 cout << "inserire il numero delle colonne" << endl;
 cin >> c;
 
 //ingresso della matrice
 
 for (int i=0;i<r;i++)
     for (int j=0; j<c; j++) {	 
     
     cout << "inserire l'elemento di posizione: [" << i << "][" << j << "]" << endl;
     cin >> matrice[j];
	 }
cout << endl;
cout << endl;
cout << "STAMPO LA MATRICE" << endl;
 for (int i=0;i<r;i++){
     for (int j=0; j<c; j++) 	 
     
    
     cout << matrice[j] << ' ' ;
     cout << endl;
	 }
cout << endl;
cout << endl;
 if (c==r){
 	
 	cout << "LA MATRICE E' QUADRATA!" << endl;
 	
 }
else {
	cout << "la matrice non e' quadrata!!" << endl;
}