Dev - C++ - forme una tercera cadena intercalando las palabras de las cadenas recibidas

 
Vista:
sin imagen de perfil

forme una tercera cadena intercalando las palabras de las cadenas recibidas

Publicado por Johan Stiven (3 intervenciones) el 29/10/2020 21:53:45
Este programa fue propuesto para hacer quien podria realizando usando solo arreglos y funciones en c.
1) Escribe un programa en C con funciones que, al recibir como datos dos cadenas de caracteres, forme una tercera cadena intercalando las palabras de las cadenas recibidas. Por ejemplo, si las cadenas son las siguientes:

ejemplo: aa ab ac af ap ar
ap bc bd be
Y el programa debe imprimir:
aa ap ab bc af bd ap be ar

Datos: cad1[50], cad2[50] (donde cad1 y cad2 representan las cadenas de 50 caracteres como máximo).
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
Imágen de perfil de Alfil
Val: 4.344
Oro
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

forme una tercera cadena intercalando las palabras de las cadenas recibidas

Publicado por Alfil (1444 intervenciones) el 30/10/2020 18:35:04
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
#include <cctype>
#include <string.h>
 
void leerCadena(char cadena[]);
 
int main()
{
    char c1[50];
    char c2[50];
    char c3[50];
    int long1, long2, k = 0, k2 = 0;
 
    printf("\nCadena 1: ");
    leerCadena(c1);
    printf("Cadena 2: ");
    leerCadena(c2);
 
    while (k + k2 < 49)
    {
        if (k < strlen(c1) && k + k2 < 49) c3[k + k2] = c1[k++];
        if (k < strlen(c1) && k + k2 < 49) c3[k + k2] = c1[k++];
        if (k + k2 < 49) c3[(k++) + k2] = ' ';
        if (k2 < strlen(c2) && k + k2 < 49) c3[k + k2] = c2[k2++];
        if (k2 < strlen(c2) && k + k2 < 49) c3[k + k2] = c2[k2++];
        if (k + k2 < 49) c3[k + (k2++)] = ' ';
    }
 
    c3[k + k2] = '\0';
 
    printf("\nCadena 3: %s\n", c3);
 
    return 0;
}
 
void leerCadena(char cadena[])
{
    fflush(stdin);;
    scanf("%50[^\n]", cadena);
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar