cicapparappa (Normal User)
Newbie
Messaggi: 5
Iscritto: 25/09/2008
|
Ciao a tutti, il mio problema è che ho un problema con la copia di una stringa... il mio problema è scrivere un programma che dato in input una parola (ad esempio casa), mi stampi tutte le possibili parole che si ottengono dalla stringa 'casa' levando una sola lettera...I qst caso le parole dovrebbero essere 'asa','csa','caa',cas'......grazie mille in anticipo
|
|
eddiewrc (Member)
Expert
Messaggi: 560
Iscritto: 30/04/2006
|
non è difficilissimo...
int main(void)
{
char parola[MAX_LENGHT];
int i, j;
// input della parola e la salvo nel vettore "parola"
for (j = 0; parola[j] != '\0'; j++)
{
printf("\n");
for (i = 0; parola[ i] != '\0'; i++ )
{
if (i != j)
printf("%c",parola[ i]);
}
}
}
nn l'ho controllato ma penso che funzioni...
questo assume che ogni parola nell'array omonimo finisca con il carattere di terminazione '\0', ma anche scriverlo usando una funzione lunghezza per l'array è valida come soluzione:
for (i = 0; i < lunghezza(parola); i++)
...
se ci sono errori clamorosi chiedo venia
Ultima modifica effettuata da eddiewrc il 26/09/2008 alle 22:08 |
|
cicapparappa (Normal User)
Newbie
Messaggi: 5
Iscritto: 25/09/2008
|
Mi dispiace ma quello che mi hai scritto on ha senso.
ho anche provato a eseguirlo ma non funziona. quando lo faccio partire mi escono solo alcune scritte strane.
|
|
Bond93 (Ex-Member)
Pro
Messaggi: 135
Iscritto: 04/05/2008
|
Si ma hai messo una istuzione k prende in input una stringa e la salva nella variabile parola???
Se no è chiaro che segmenta...
PS: il codice l'ho provato e va alla perfezione...
Ultima modifica effettuata da Bond93 il 27/09/2008 alle 19:39 |
|
eddiewrc (Member)
Expert
Messaggi: 560
Iscritto: 30/04/2006
|
mi sembrava di non essere rincretinito...
|
|
lorelapo (Ex-Member)
Expert
Messaggi: 355
Iscritto: 28/02/2007
|
sì ma quando uno arriva a postare qua credo che dovrebbe essere ovvio che un computer programmato non è un deus ex machina, se non gli dai una parola a cui applicarlo non può fare niente.
|
|
cicapparappa (Normal User)
Newbie
Messaggi: 5
Iscritto: 25/09/2008
|
Ho riprovato il programma...Prima avevo sbagliato una piccola cosa.. ora funziona...
GRAZIE MILLE A TUTTI
|
|
cicapparappa (Normal User)
Newbie
Messaggi: 5
Iscritto: 25/09/2008
|
UN ULTIMA COSA..dovevo fare un programma che data in input una parola doveva controllare se tale parola era presente in un file dizionario...ho provato a farlo ma non mi funziona..forse sarà l'inesperienza.ora lo scrivo.....
#include <stdio.h>
#include <stdlib.h>
#include<ctype.h>
#include<string.h>
int main()
{
char linea [500], parola[20];
int i;
char confronto[20];
int j=0;
printf("Inserisci la parola da cercare\n");
scanf("%s", confronto);
FILE *stream=fopen("zingarelli2005.txt", "r");
while(fgets(linea,500,stream)!=NULL){
for (i=0; linea != ' '; i++)
parola = linea ;{
j = 0;
if (strcmp(confronto, parola)== 0)
printf("La parola è stata trovata\n");
else
j++ ;
}
}
if (j != 0)
printf("La parola non è stata trovata\n");
fclose(stream);
system("PAUSE");
return 0;
}
in allegato vi porto il file dizionario.... quale è il problema???? GRAZIE
|
|
cicapparappa (Normal User)
Newbie
Messaggi: 5
Iscritto: 25/09/2008
|
UN ULTIMA COSA..dovevo fare un programma che data in input una parola doveva controllare se tale parola era presente in un file dizionario...ho provato a farlo ma non mi funziona..forse sarà l'inesperienza.ora lo scrivo.....
#include <stdio.h>
#include <stdlib.h>
#include<ctype.h>
#include<string.h>
int main()
{
char linea [500], parola[20];
int i;
char confronto[20];
int j=0;
printf("Inserisci la parola da cercare\n");
scanf("%s", confronto);
FILE *stream=fopen("zingarelli2005.txt", "r");
while(fgets(linea,500,stream)!=NULL){
for (i=0; linea != ' '; i++)
parola = linea ;{
j = 0;
if (strcmp(confronto, parola)== 0)
printf("La parola è stata trovata\n");
else
j++ ;
}
}
if (j != 0)
printf("La parola non è stata trovata\n");
fclose(stream);
system("PAUSE");
return 0;
}
in allegato vi porto il file dizionario.... quale è il problema???? GRAZIE
|
|