Jump to content
Fórum Script Brasil
  • 0

Intercalação de Strings. Help!


Muhamed Avila

Question

pessoal preciso muito de uma ajuda... eu sou meio leigo em programação e preciso de um help com strings para esse exercicio:

Faça um programa C que leia duas frases e gere uma terceira frase que contenha a

intercalação das palavras das duas frases lidas. No final escreva a frase resultante.

Exemplo:

Frase1: hoje está um belo dia

Frase2: talvez chova amanhã

Saída: hoje talvez está chova um amanhã belo dia

eu sei que tenho que criar duas frases e tranformar-las em vetores porem não sei como intecalar as frases, apenas sei comando para concatenar!

agradecido se alguém me der uma luz!

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

int main(){
char frase1[MAX],frase2[MAX],frase3[200];
int i,j,l,tam1,tam2;
printf("Digite a primeira frase frase\n: "); 
gets(frase1); 
printf("Digite a segunda frase\n: "); 
gets(frase2);
 tam1 = strlen(frase1);  
  tam2 = strlen(frase2); 
  for (i = 0; i < tam1; i++)
  {
       for (j = 0; j < tam2; j++)  
       {
           if (frase1[i]== ' ')
           {
           frase3[l++]= frase1[i];
           }
           if (frase2[j]== ' ')
           {
            frase3[l++]=frase2[j];
            }
            }
            }
            printf ("%s", frase3[l]);
            system("PAUSE");
           return 0;
           }

é mais ou menos isso? não está funcionando nem sei porque..

eu to mt sem noção de como criar esse programa

Link to comment
Share on other sites

  • 0

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX 100 


int main(){
char Frase_1[MAX],Frase_2[MAX],Frase_3[200];
int x = 0, y = 0, Flag_1 = 0, Flag_2 = 0;

printf ("\n digite a primeira frase:");
gets (Frase_1);
printf ("\n digite a segunda frase:");
gets (Frase_2);
    while ( ( Flag_1 == 0 ) || ( Flag_2 == 0 ) )
    {
        if ( y < strlen( Frase_1 ) )
            Frase_3[x++] = Frase_1[y];
        else
            Flag_1 = 1;

        if ( y < strlen( Frase_2 ) )
            Frase_3[x++] = Frase_2[y];
        else
            Flag_2 = 1;

        y++;

    }

    Frase_3[x] = '';
    printf (" %s \n", Frase_3);
system("PAUSE");
return 0;
}

agora to conseguindo fazer que o programa intercale letras... mas as palavras não consigo fazer intercalar-los... eu tava pensando em colocar uma outra condição para que a string seja lida até um espaço... mas não da certo... alguém pode realmente me ajudar?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...