Dev - C++ - INVERTIR LINEA DE TEXTO EN C_ARRAY BIDIMENSIONAL

 
Vista:

INVERTIR LINEA DE TEXTO EN C_ARRAY BIDIMENSIONAL

Publicado por Alexa (7 intervenciones) el 02/05/2020 20:50:43
Tengo el siguiente ejercicio: Escribir un programa en C que lea una línea de texto, la almacene en un array y la escriba al revés.La longitud de la línea no será especificada (terminará al pulsar la tecla Intro), pero se supone
que no excederá de 80 caracteres.
Avancé hasta la parte de almacenar las palabras en un array bidimensional, pero solo guarda la primera palabra. No se que está mal en mi código.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include<stdio.h>
#include<string.h>
#define NUM 20
#define TOT 80
void guardar_palabras(char palabras[][NUM]);
 
main(){
	char palabras[NUM][NUM];
	guardar_palabras(palabras);
	printf("%s",palabras[1]);
	return 0;
}
 
void guardar_palabras(char palabras[][NUM]){
	int inicio=0,cont2,cont1=0,i=0,fin;
	char letras[TOT];
 
	printf("Digite el texto que desea invertir: ");
 
	while( (letras[i]=getchar()) !='\n' && i<80){
	if(letras[i]==' '){
		fin=i-1;
		for(cont2=inicio; cont2<=fin;cont2++){
			palabras[cont1][cont2]=letras[cont2];}
		inicio=fin+2;
		cont1++;}
	i++;
	}
	if (letras[i]=='\n'){
		fin=i-1;
		for(cont2=inicio; cont2<=fin;cont2++){
			palabras[cont1][cont2]=letras[cont2];}
		inicio=fin+2;
	}
	return;}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder