Inserire in un vettore una frase le cui parole sono separate da uno o più spazi. Inserire le parole, una per riga, in una matrice char e stamparla.
Ad esempio, se la frase è “mi piace l’estate” la matrice sarà:
mi
piace
l’estate
segmentation fault
codice:#include <stdio.h> #include <stdlib.h> #include <string.h> void insvet(char v[100]); void insmat(char mat[100][100],char vet[100]); void stampa(char mat[100][100]); int main(int argc, char **argv) { char vet[100],m[100][100]; insvet(vet); insmat(m,vet); stampa(m); } void insvet(char v[100]){ printf("inserisci frase: \n"); scanf("%[^\n]",v); } void insmat(char mat[100][100],char vet[100]) { int i,j,k; char c; i=0; j=0; k=0; while(vet[i]!='\0') { c=strcmp(vet,""); if(c==0) { j++; mat[j][k]=vet[i]; i++; } else { mat[j][k]=vet[i]; k++; i++; } } } void stampa(char mat[100][100]){ int i,j; while(mat[i][j]!='\0'){ printf("%c",mat[i][j]); i++; j++; } }

Rispondi quotando