Show 150 posts per page |
.dsy:it. (http://www.dsy.it/forum/)
- Algoritmi e strutture dati (http://www.dsy.it/forum/forumdisplay.php?forumid=207)
-- Chiarimento su riempimento e stampa vettore (http://www.dsy.it/forum/showthread.php?threadid=43866)
Chiarimento su riempimento e stampa vettore
Ciao a tutti!
Vorrei riempire un vettore con numeri casuali e stamparlo! Solo che difficoltà a capire dove sbaglio...
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 100
void riempi_array (int a[], int n);
void stampa_array (int a[], int n);
int main (void) {
int a[N] = {0}, n;
printf ("Inserisci n\n");
scanf ("%d", &n);
riempi_array (a, n);
stampa_array (a, n);
return 0;
}
void riempi_array (int a[], int n) {
int* p;
for (p = a; p< a+n; p++) {
srand (time(NULL));
*p = rand() % 99+1; //assegno al contenuto di numeri compresi tra 0 e 99
}
}
void stampa_array (int a[], int n) {
int* p;
printf ("vettore: ");
for (p = a; p< a+n; p++)
printf ("%d ",*p);
printf ("\n");
}
Grazie
code:
#include <stdio.h> #include <stdlib.h> #include <time.h> #define N 100 void riempi_array (int a[], int n); void stampa_array (int a[], int n); int main (void) { int a[N] = {0}, n; printf ("Inserisci n\n"); scanf ("%d", &n); riempi_array (a, n); stampa_array (a, n); return 0; } void riempi_array (int a[], int n) { int* p; srand (time(NULL)); for (p = a; p< a+n; p++) { *p = rand() % 99+1; //assegno al contenuto di numeri compresi tra 0 e 99 } } void stampa_array (int a[], int n) { int* p; printf ("vettore: "); for (p = a; p< a+n; p++) printf ("%d ",*p); printf ("\n"); }
__________________
Non ti perdere di coraggio se ti tocca lavorare molto e raccogliere poco.....
grazie
ne approfitto per chiedere un'altra cosa sui vettori!
ho scritto questo codice per allocare un vettore con n elementi, dove n è inserito da tastiera.appena compilo ottengo 2 warning:
c:13:7: warning: conflicting types for built-in function ‘__builtin_alloca’ [enabled by default]
void *alloca (int n);
^
c:30:7: warning: conflicting types for built-in function ‘__builtin_alloca’ [enabled by default]
void *alloca (int n)
^
code:
int main (void) { int n, *a; //int *p; printf ("Inserisci n\n"); scanf ("%d", &n); a = (int*) alloca (n); free (a); return 0; } void *alloca (int n) { void *a; a = malloc (n * sizeof (int)); if (a == NULL) exit (1); return a; }
Cambia nome ad "alloca" e mettila prima del main (oltre ad importare le opportune librerie)
Ho importato le librerie e scritto il prototipo della funzione, anche se nn le ho scritte nel post. Il problema è solo per il nome, ma come mai? Forse xke avevo già scritto in un altro programma una funzione con lo stesso nome?
lancia "man alloca", esiste già!
ahahah va bene! grazie come sempre
All times are GMT. The time now is 21:18. | Show all 8 posts from this thread on one page |
Powered by: vBulletin Version 2.3.1
Copyright © Jelsoft Enterprises Limited 2000 - 2002.