Devo 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
Aiutooo mi da "ha smesso di funzionare" etc
codice:#include <stdlib.h> #include <stdio.h> int insv(char vet[100],int riemp,int r); void insm(char vet[100],char mat[100][100],int r,int riemp); void stampa(char mat[100][100],int r); int main() { char v[100], m [100][100]; int r; int riemp; r=insv(v,riemp,r); insm(v,m,r,riemp); stampa(m,r); return (0); system("pause"); } int insv(char vet[100],int riemp,int r) { printf("inserisci frase "); scanf("%[^\n]",vet); while(vet[riemp]=='\n') { if(vet[riemp]==' ') { r++; } riemp++; } return r; } void insm(char vet[100],char mat[100][100],int r,int riemp) { int i,k; k=0; for(i=0;i<=r;i++) { while((vet[k]!=' ')||(vet[k]!='\0')) { mat[i] [k]=vet[k]; k++; } } } void stampa(char mat[100][100],int r){ int i; for(i=0;i<r;i++) printf("%s\n", &mat[i][0]); }

Rispondi quotando