Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- typedef struct {
- char nome;
- struct {
- int X;
- int Y;
- }coord;
- }Punto;
- void setPunto(Punto *P);
- Punto* fzCreaVett(int nP);
- int main()
- {
- int numPunti;
- Punto* p;
- printf("Numero Punti: ");
- scanf("%d", &numPunti);
- p = fzCreaVett(numPunti);
- for (int i = 0; i < numPunti; i++) // Ciclo per la funzione setPunti, dando come parametro il puntatore con un indice (quindi un vettore)
- {
- printf("\n%d^ punto:\n", i+1);
- setPunto(&p[i]); // Usiamo gli indici per salvare i nomi e le informazione della funzione fzCreaVett
- }
- printf("\n\n");
- for (int i = 0; i < numPunti; i++) // Ciclo per stampare le coordinate assegnate
- printf("%c (%d,%d)\n", p[i].nome, p[i].coord.X, p[i].coord.Y);
- return 0;
- }
- void setPunto(Punto *P) // Interazione I/O
- {
- printf("Nome: "); while (getchar() != '\n'); scanf("%c", &P->nome);
- printf("X punto %c: ", P->nome); while (getchar() != '\n'); scanf("%d", &P->coord.X);
- printf("Y punto %c: ", P->nome); while (getchar() != '\n'); scanf("%d", &P->coord.Y);
- }
- Punto* fzCreaVett(int nP) // Creo dinamicamente un vettore di nP elementi
- {
- Punto *p = (Punto*)malloc(nP * sizeof(Punto*));
- return p;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement