No entiendo por que no funciona
Publicado por Jorge (24 intervenciones) el 18/01/2019 07:56:40
Miren el problema es que no imprime el arreglo del final no se por que esta todo bien, es un programa que busca las letras a y c en las palabras de un texto y las imprime al final, pero ojo la ultima palabra del arreglo no la toma en cuenta gracias a que termina el programa cuando encuentra el caracter nulo
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
36
37
38
39
40
41
42
43
44
45
46
47
main()
{
int T=500,texto3=0,texto4=0,a,b,c,d,cuenta=0,cero=0,textot=0;
char texto[T]={'\0'}; // recibe el texto
char texto2[T]={'\0'}; //recibe las palabras con las letras a y c
gets(texto); //funcion que sirve para pedir varias cadenas a diferencia del scan, como un texto por ejemplo
for(a=0;a<T;a++)
{
if(texto[a]='\0')
break;
if(texto[a]=' ')
{
for(b=a-1;b>=cero;b++)
{
if(texto[b]='a') texto3=1;
if(texto[b]='c') texto4=1;
textot=texto3+texto4;
if(b==cero&&textot==2) // aqui se asegura que llege al final de la palabra por si encontro las dos letras antes, si no la palabra se copiaria hasta donde encontro la segunda letra
{
for(c=cero;c<a;c++)
{
texto2[cuenta]=texto[c];
cuenta++;
if(c==a-1) // agrega un espacio en blanco despues de copiar la palabra, no es de importancia
{
texto2[cuenta]=' ';
cuenta++;
}
}
}
}
}
texto3=0;
texto4=0;
cero=a+1;
}
for(d=0;d<T;d++) // aqui utilice el puts pero de igual manera no imprime
{
if(texto[d]=='\0') break;
printf("%c", texto2[d]);
}
}
Valora esta pregunta
0