PDA

Visualizza la versione completa : [C] Scansione vettore con ciclo for e uso degli indici


miscialo
15-01-2007, 16:13
salve ho un problema... ho questo codice



#include <stdio.h>
#include <stdlib.h>


int
main ()
{
int vett_masse[10], mat[10][3];
FILE *fp;
int f,n;
int a,b,c,d;
char s [30];

// Apri il file che contiene i dati


if(( fp = fopen ("points.dat","r")) == NULL){
printf("\nNon Posso aprire il file.\nFile mancante nella directory.\n");
}


else{


// Leggi la prima riga (n = numero di elementi)
fgets (s,30,fp);
sscanf (s,"%d",&n);


// Ciclo per stampare la matrice della locazione
printf (" Locazione:\n\n");
for (f=0;f<n;f++)
{
fgets (s,30,fp);
sscanf (s,"%d %d %d %d\r\n",
&mat[n][0],&mat[n][1],&mat[n][2],&vett_masse[n]);

printf (" %d %d %d %d \n\n", mat[n][0],mat[n][1],mat[n][2],vett_masse[n]);

}
// Ciclo per stampare la colonna delle masse
printf (" Masse:\n");

// Stampare il numero n





}/*chiude l'else*/




system("pause");
return(0);
}

dovrei stampare il vettore delle masse "vett_masse[n]" fuori da quel ciclo per ottenere una stampa a video di questo tipo:

Locazione:
5 -4 3
4 3 -2
-4 -3 -1
-9 8 6

Masse:
2
5
2
1

ho provato a fare un secondo ciclo uguale al primo inserendo il vett_mass ma mi stampa tanti 1...come devo fare? help please

andbin
15-01-2007, 16:40
A rigor di logica, dovresti usare 'f' invece di 'n' come indice:

&mat[f][0],&mat[f][1],&mat[f][2],&vett_masse[f]);

(e anche per la printf)

Loading