Informática, perguntado por PascoalB, 3 meses atrás

Algoritmo para ler um nome completo, com espaços e acentuação (atenção para o formato passado para o scanf()). Em seguida exiba o nome de três formas diferentes:

a) texto normal, utilizando a máscara de formatação string (%s).
b) exiba cada uma das palavras do nome em linhas diferentes – use o espaço para separar as palavras
EM C

Soluções para a tarefa

Respondido por joaopedrolemos
3

#include <stdio.h>

#include <locale.h>

int main() {

   setlocale(LC_ALL,"Portuguese");

   char nome[50];

   printf("NOME: "); fgets(nome, 50, stdin);

   printf("Seu nome é %s", nome);

   int i = 0;

       while (nome[i] != '\0'){

           printf("%c",nome[i]);

           if (nome[i]==' ') printf("\n");

           i++;

       }

   return 0;

}


joaopedrolemos: No caso em questão, não recomendo utilizar a função scanf, ela não vai fazer a leitura adequada considerando os espaços vazios e fim de linha, é mais interessante utilizar a função fgets. No caso da presença de caracteres e acentuação próprios da língua portuguesa, utilizei a função setlocale da #include locale.h
Perguntas interessantes