Ciao ragazzi ho il seguente problema:
Scrivere un programma che legge un testo inserito da tastiera contenente al più 100 parole, e lo memorizza in un array line di caratteri di lunghezza massima MAX_STRING 300. Poi suddivide il testo in parole e memorizza ogni parola in una riga di un array bidimensionale. Le parole possono essere separate da uno o più spazi che non devono essere memorizzati ne' contati nella lunghezza di una parola.
Ho completato il programma ma in output non ricevo niente, sapete dirmi qual'è il problema?
Grazie in anticipo.
codice:
#include <stdlib.h>
#include <stdio.h>
#define MAX_STRING 300
main ()
{
char line[MAX_STRING], ch, line_2D[MAX_STRING][MAX_STRING], space=' ';
int i=0, r=0, c=0, j , k, x=0;
printf("inserisci la frase da scomporre in parole ");
do
{
ch=getchar();
line[i]=ch;
i++;
}
while ((ch=='\n') && (i>MAX_STRING));
x=i;
for(i=0;i<x;i++)
{
if(line[i]!=space)
{
line_2D[r][c]=line[i];
c++;
}
else
r++;
}
for(k=0;k<r;k++)
for(j=0;j<c;j++)
printf(" e':%c ", line_2D[k][j]);
system ("pause");
}