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++;
}
}