PDA

Visualizza la versione completa : C - Stampa Di Una Matrice Quadrata


Enna90
05-01-2013, 10:36
#include<stdio.h> void stampa_elementi(int**, int); void stampa_matrice(int**,int); int matrix [N][N]; int i,j; int N ; printf (" introduci la dimensione della matrice quadrata : " ); scanf ( "%d" , &N ); stampa_matrice(matrix, N); stampa_elementi(matrice, N); return 0; void stampa_matrice(int** matrix) { { printf ("la matrice e':\n"); for (i=0; i<N; i++){ for (j=0; j<N; j++) printf ("%d",matrix[i][j]); printf ( "\n"); } } void stampa_elementi(int** matrix) { { for (i=0 ; i<N; i++) for (j=0; j<N; j++) { printf ("Elemento [%d][%d]: ",i+1 ,j+1 ); scanf ("%d",&matrix[i][j]); } }

Ho scritto questo codice ieri , nella prima versione volevo solamente che , data come costante la dimensione della matrice quadrata, mi venissero chiesti , e poi stampati gli elementi della matrice (codice testato e funzionante). Ora ho provato a modificarlo poiché vorrei che la dimensione della matrice fosse espressa da tastiera e non più una costante. Poi per cercare di esercitarmi sulle funzioni, e rendere il codice più leggibile ho cercato di esprimere il passaggio della richiesta di elementi da tastiera , e il passaggio di stampa a griglia della matrice con due funzioni. Il problema e' che l'output del programma consisten nella sola richiesta della dimensione della matrice e poi il programma va in tilt ed esce automaticamente dal programma ( premetto che uso c/c++ compiler per ipad )

oregon
05-01-2013, 11:31
Devi postare meglio il codice perché è illeggibile.

Enna90
05-01-2013, 12:28
0001 #include<stdio.h>
0002
0003
0004 void stampa_elementi(int**, int);
0005 void stampa_matrice(int**,int);
0006
0007
0008
0009 int matrix [N][N];
0010 int i,j;
0011 int N ;
0012
0013
0014
0015 printf (" introduci la dimensione della matrice quadrata : " );
0016 scanf ( "%d" , &N );
0017
0018
0019 stampa_matrice(matrix, N);
0020 stampa_elementi(matrix, N);
0021
0022
0023 return 0;
0024
0025
0026 void stampa_matrice(int** matrix) { {
0027 printf ("la matrice e':\n");
0028 for (i=0; i<N; i++){
0029
0030 for (j=0; j<N; j++)
0031 printf ("%d",matrix[i][j]);
0032
0033 printf ( "\n"); } }
0034
0035
0036
0037 void stampa_elementi(int** matrix) { {
0038 for (i=0 ; i<N; i++)
0039
0040 for (j=0; j<N; j++) {
0041
0042 printf ("Elemento [%d][%d]: ",i+1 ,j+1 );
0043
0044
0045 scanf ("%d",&matrix[i][j]);
0046 } }

MdE2005
05-01-2013, 12:32
Originariamente inviato da Enna90


0001 #include<stdio.h>
0002
0003
0004 void stampa_elementi(int**, int);
0005 void stampa_matrice(int**,int);
0006
0007
0008
0009 int matrix [N][N];
0010 int i,j;
0011 int N ;
0012
0013
0014
0015 printf (" introduci la dimensione della matrice quadrata : " );
0016 scanf ( "%d" , &N );
0017
0018
0019 stampa_matrice(matrix, N);
0020 stampa_elementi(matrix, N);
0021
0022
0023 return 0;
0024
0025
0026 void stampa_matrice(int** matrix) { {
0027 printf ("la matrice e':\n");
0028 for (i=0; i<N; i++){
0029
0030 for (j=0; j<N; j++)
0031 printf ("%d",matrix[i][j]);
0032
0033 printf ( "\n"); } }
0034
0035
0036
0037 void stampa_elementi(int** matrix) { {
0038 for (i=0 ; i<N; i++)
0039
0040 for (j=0; j<N; j++) {
0041
0042 printf ("Elemento [%d][%d]: ",i+1 ,j+1 );
0043
0044
0045 scanf ("%d",&matrix[i][j]);
0046 } }


Per curiosità, che compilatore stai usando di preciso?

Non vengono sollevati errori? Dove sarebbe la "int main ()"

Enna90
05-01-2013, 12:44
Sto usando l'app c/c++ per ipad e stranamente non da mai errore se non metto la int main con return e l'integrazione di base include <stdio.h> ma ho voluto aggiungere in questo caso , solo che ho dimenticato la int main !! Scusate :dhò:

MdE2005
05-01-2013, 12:49
Originariamente inviato da Enna90
Sto usando l'app c/c++ per ipad e stranamente non da mai errore se non metto la int main con return e l'integrazione di base include <stdio.h> ma ho voluto aggiungere in questo caso , solo che ho dimenticato la int main !! Scusate :dhò:

Quindi? Risolto?

Enna90
05-01-2013, 12:52
Nono :( anche modificando e sistemando int main , l'output si interrompe dopo la richiesta della dimensione della matrice :confused:

MdE2005
05-01-2013, 12:54
Non viene sollevato nessun errore?

Enna90
05-01-2013, 13:13
Anche a me non viene nessun errore solo che una volta chiesto e digitato il valore della dimensione, si impalla e avviene l'uscita automatica dall'app

Enna90
05-01-2013, 13:13
Anche a me non viene nessun errore solo che una volta chiesto e digitato il valore della dimensione, si impalla e avviene l'uscita automatica dall'app

Loading