Problema in c
#include
#define N 20
int lenght(char *s);
int inverti(char *str,int n,char *result);
main(){
char mainstr[N];
int nmain=0;
char resultstr[N];
printf("\Inserisci la stringa iniziale \n");
scanf("%s", mainstr);
printf("\La stringa inserita e' %s \n",mainstr);
int lungh=0;
lungh=lenght(mainstr);
printf("\Inserisci n \n");
scanf("%d", &nmain);
printf("\ --- FUNZIONE INVERTI --- \n");
int p=0;
p=inverti(mainstr,nmain,resultstr);
}
int inverti(char *str,int n,char *result){
int i;
for (i=0; str!='\0'; i++)
result = str;
result[n] = '\0';
printf("\nstr e': %s \n",str);
printf("\nresult e': %s \n",result);
int k=0;
printf("\ --- contrario --- \n");
for (k=n;result[k]>=0;k--)
printf("%c",result[k]);
}
int lenght(char *s) {
int i;
for (i=0;s!='\0';i++);
printf("\nLa lunghezza della stringa e' :%d\n",i);}
purtroppo anche se taglia correttamente la stringa copiata result lascia caratteri strani.Dove sbaglio?
#define N 20
int lenght(char *s);
int inverti(char *str,int n,char *result);
main(){
char mainstr[N];
int nmain=0;
char resultstr[N];
printf("\Inserisci la stringa iniziale \n");
scanf("%s", mainstr);
printf("\La stringa inserita e' %s \n",mainstr);
int lungh=0;
lungh=lenght(mainstr);
printf("\Inserisci n \n");
scanf("%d", &nmain);
printf("\ --- FUNZIONE INVERTI --- \n");
int p=0;
p=inverti(mainstr,nmain,resultstr);
}
int inverti(char *str,int n,char *result){
int i;
for (i=0; str!='\0'; i++)
result = str;
result[n] = '\0';
printf("\nstr e': %s \n",str);
printf("\nresult e': %s \n",result);
int k=0;
printf("\ --- contrario --- \n");
for (k=n;result[k]>=0;k--)
printf("%c",result[k]);
}
int lenght(char *s) {
int i;
for (i=0;s!='\0';i++);
printf("\nLa lunghezza della stringa e' :%d\n",i);}
purtroppo anche se taglia correttamente la stringa copiata result lascia caratteri strani.Dove sbaglio?
Risposte
Dipende da cosa vuoi ottenere.
Vorrei ottenere una stringa,(che è result ) che ha all' interno i primi n caratteri della stringa str letti al contrario
[mod="Fioravante Patrone"]Chiudo, vedasi qui:
https://www.matematicamente.it/forum/pri ... 35972.html[/mod]
https://www.matematicamente.it/forum/pri ... 35972.html[/mod]