|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: May 2006
Città: Monza
Messaggi: 3686
|
[C]Acquisire parole con vettori
Ciao. Ho un esercizio da fare che chiede di far scrivere all'utente due parole e poi stamparle con uno spazio in mezzo.
Il libro scrive che bisogna fare due vettori contenenti le due parole e poi sommarli. Ma come si sommano due vettori ? e lo spazio in mezzo. Thx a lot
__________________
" Disprezzato e reietto dagli uomini, uomo dei dolori che ben conosce il patire, come uno davanti al quale ci si copre la faccia, era disprezzato e non ne avevamo alcuna stima." ... "Maltrattato, si lasciò umiliare e non aprì la sua bocca; era come agnello condotto al macello, come pecora muta di fronte ai suoi tosatori, e non aprì la sua bocca" |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Sommarli è un'espressione non esatta...magari sarebbe meglio dire unirli...
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jul 2007
Messaggi: 1159
|
Prendi la dimensione dei due vettori e ne allochi uno nuovo con la dimensione somma dei 2 + 1 (che conterrà lo spazio); dopo se usi la funzione strcat () concateni i due vettori uno alla volta
|
|
|
|
|
|
#4 | ||
|
Senior Member
Iscritto dal: May 2006
Città: Monza
Messaggi: 3686
|
Quote:
Quote:
Thx
__________________
" Disprezzato e reietto dagli uomini, uomo dei dolori che ben conosce il patire, come uno davanti al quale ci si copre la faccia, era disprezzato e non ne avevamo alcuna stima." ... "Maltrattato, si lasciò umiliare e non aprì la sua bocca; era come agnello condotto al macello, come pecora muta di fronte ai suoi tosatori, e non aprì la sua bocca" |
||
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jul 2007
Messaggi: 1159
|
Ti faccio un esempio veloce:
per ipotesi le due parole sono nelle stringhe a e b; fai int num1=strlen (a) per avere la dimensione della stringa a; int num2=strlen(b) per la dimensione di b; a questo punto allochi una stringa char c[num1+num2+1]; ora hai una stringa c che conterrà alla fine a+b; se fai strcpy (c,a) hai copiato in c il contenuto di a; ora se fai strcat (c," "); e strcat (c,b) dovresti avere in c il contenuto di a e b intervallato con lo spazio |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Suppongo che l'esercizio chiedesse di operare con i vettori, senza funzioni sulle stringhe e senza allocazione dinamica, altrimenti avrebbe poco senso.
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: May 2006
Città: Monza
Messaggi: 3686
|
Io comandi come strcpy e strcpa non li ho mai usati, ma poi non lo so, la proff ci ha chiesto se l'hanno scorso avevamo fatto le stringhe e noi gli abbiamo risposto di no e lei ci ha detto che per far riceve al computer delle parole intere bisogna trattarle come array di lettere.
@cionci: cosa è che ti sembra non vada tra il programma di carter e quello che devo fare io? Thx a lot
__________________
" Disprezzato e reietto dagli uomini, uomo dei dolori che ben conosce il patire, come uno davanti al quale ci si copre la faccia, era disprezzato e non ne avevamo alcuna stima." ... "Maltrattato, si lasciò umiliare e non aprì la sua bocca; era come agnello condotto al macello, come pecora muta di fronte ai suoi tosatori, e non aprì la sua bocca" |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Jul 2007
Messaggi: 1159
|
|
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: May 2006
Città: Monza
Messaggi: 3686
|
E che significa tradurre i comandi in semplici istruzioni c ?
__________________
" Disprezzato e reietto dagli uomini, uomo dei dolori che ben conosce il patire, come uno davanti al quale ci si copre la faccia, era disprezzato e non ne avevamo alcuna stima." ... "Maltrattato, si lasciò umiliare e non aprì la sua bocca; era come agnello condotto al macello, come pecora muta di fronte ai suoi tosatori, e non aprì la sua bocca" |
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Crei due vettori per due stringhe. Crei un vettore per la stringa risultante.
Leggi le stringhe da input. - Con un while scorri la prima stringa fino al carattere \0 che è quello di fine stringa e copi ogni carattere nel vettore della stringa risultate, non devi copiare lo \0. - Copi il carattere spazio nella stringa risultante. - Con un while scorri anche la seconda stringa fino allo \0, questa volta copi anche lo \0 (per avere una stringa valida deve essere sempre presente come ultimo carattere) e copi il contenuto nella stringa risultante. In queste tre operazioni userai sempre lo stesso indice per scorrere gli elementi del vettore risultante. |
|
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: Jul 2007
Messaggi: 1159
|
ad esempio per la strlen scorri la stringa fino al '\0' per sapere la sua dimensione; per la copia nella stringa c devi spostare ogni singolo elemento in ogni posizione delle 2 stringhe
Edit: come non detto, ti ha già spiegato tutto (tra l'altro anche meglio) Cionci Ultima modifica di carter100 : 23-09-2007 alle 18:36. |
|
|
|
|
|
#12 |
|
Senior Member
Iscritto dal: May 2006
Città: Monza
Messaggi: 3686
|
Grazie per l'aiuto, ma non capisco come in pratica posso eseguire l'operazione di copiare i caratteri da un array all'altro.
__________________
" Disprezzato e reietto dagli uomini, uomo dei dolori che ben conosce il patire, come uno davanti al quale ci si copre la faccia, era disprezzato e non ne avevamo alcuna stima." ... "Maltrattato, si lasciò umiliare e non aprì la sua bocca; era come agnello condotto al macello, come pecora muta di fronte ai suoi tosatori, e non aprì la sua bocca" |
|
|
|
|
|
#13 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
s3[j] = s1[i];
|
|
|
|
|
|
#14 |
|
Senior Member
Iscritto dal: May 2006
Città: Monza
Messaggi: 3686
|
Che stupido così banale e non ci avevo pensato.Thx. Appena ho tempo provo
__________________
" Disprezzato e reietto dagli uomini, uomo dei dolori che ben conosce il patire, come uno davanti al quale ci si copre la faccia, era disprezzato e non ne avevamo alcuna stima." ... "Maltrattato, si lasciò umiliare e non aprì la sua bocca; era come agnello condotto al macello, come pecora muta di fronte ai suoi tosatori, e non aprì la sua bocca" |
|
|
|
|
|
#15 |
|
Senior Member
Iscritto dal: May 2006
Città: Monza
Messaggi: 3686
|
Io ti ringrazio cionci, ma a me non viene, sarò che sbaglio qualche cosa io...
Ti costa troppo appena hai 2 minuti farmelo?
__________________
" Disprezzato e reietto dagli uomini, uomo dei dolori che ben conosce il patire, come uno davanti al quale ci si copre la faccia, era disprezzato e non ne avevamo alcuna stima." ... "Maltrattato, si lasciò umiliare e non aprì la sua bocca; era come agnello condotto al macello, come pecora muta di fronte ai suoi tosatori, e non aprì la sua bocca" |
|
|
|
|
|
#16 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Se te lo faccio non impari niente
Prova intanto a copiare il primo vettore sul vettore risultato. |
|
|
|
|
|
#17 | |
|
Senior Member
Iscritto dal: May 2006
Città: Monza
Messaggi: 3686
|
Quote:
Cmq ho trovato sul sito della uni di roma due righe sulle stringhe, c'è scritto un sacco di roba che la proff non ci ha detto. Me lo leggo e e poi ci provo
__________________
" Disprezzato e reietto dagli uomini, uomo dei dolori che ben conosce il patire, come uno davanti al quale ci si copre la faccia, era disprezzato e non ne avevamo alcuna stima." ... "Maltrattato, si lasciò umiliare e non aprì la sua bocca; era come agnello condotto al macello, come pecora muta di fronte ai suoi tosatori, e non aprì la sua bocca" |
|
|
|
|
|
|
#18 |
|
Senior Member
Iscritto dal: May 2006
Città: Monza
Messaggi: 3686
|
Mah...questo è quello che ho fatto (si prega di non prendere in giro, mettersi a ridere, chiamare amici e raccontargli questa barzelletta etc..)
Codice:
#include <stdio.h>
#include <stdlib.h>
char word1[7],words[20];
int i;
int main(int argc, char *argv[])
{
printf("Esercizio prova Array di caratteri\n");
for(i=0;i<7;i++)
scanf("&s", &word1[i]);
words[i]=word1[i];
for(i=0;i<7;i++)
printf("%s", words[i]);
system("PAUSE");
return 0;
}
__________________
" Disprezzato e reietto dagli uomini, uomo dei dolori che ben conosce il patire, come uno davanti al quale ci si copre la faccia, era disprezzato e non ne avevamo alcuna stima." ... "Maltrattato, si lasciò umiliare e non aprì la sua bocca; era come agnello condotto al macello, come pecora muta di fronte ai suoi tosatori, e non aprì la sua bocca" |
|
|
|
|
|
#19 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
No...parti da qui:
Codice:
#include <stdio.h>
#include <stdlib.h>
char word1[7], words[20];
int i;
int main(int argc, char *argv[])
{
printf("Esercizio prova Array di caratteri\n");
scanf("%s", word1);
|
|
|
|
|
|
#20 | |
|
Senior Member
Iscritto dal: May 2006
Città: Monza
Messaggi: 3686
|
Quote:
words[i]=word1[i]
__________________
" Disprezzato e reietto dagli uomini, uomo dei dolori che ben conosce il patire, come uno davanti al quale ci si copre la faccia, era disprezzato e non ne avevamo alcuna stima." ... "Maltrattato, si lasciò umiliare e non aprì la sua bocca; era come agnello condotto al macello, come pecora muta di fronte ai suoi tosatori, e non aprì la sua bocca" |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 09:04.












Che stupido così banale e non ci avevo pensato.








