• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

suzy

[C] Ajuda: Trocar espaços por '\n'

2 mensagens neste tópico

Desenvolva um programa que leia uma frase introduzida pelo utilizador e escreva cada

uma das palavras que constituem a frase numa linha separada. Considere que as palavras

estão separadas por um ou mais espaços em branco, podendo também existir espaços no

início e fim da frase.

Exemplo: Hoje e Domingo!

O programa deverá escrever:

Hoje

e

Domingo!

tou aqui com dificuldades, ora bem, sei que a funçao scanf vai buscar a 1 palavra da minha frase  :cheesygrin:

#include <stdio.h>

#include<string.h>

# define N 20

char str1[N]

a minha duvida a palavra acaba qd achar o caracter terminador '\0'??? como faço?? :eek: thanks

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

for(flag=0,i=0,j=0;str[i];i++)
{
  if(str[i]==' ')
  {
    if(flag)
    {
      new[j]='\n';
      j++;
      flag=0;
    }
  }
  else
  {
    new[j]=str[i];
    j++;
    flag=1;
  }
}

new[j]='\0';

algo como isto deve resolver o problema (a partir da string 'str' cria a string 'new', com o formato que precisas...)

EDIT: a inicialização da flag estava errada.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora