Manipulação de stringsManipulação de strings
Prof. Alex Camargo
alexcamargoweb@gmail.com
UNIVERSIDADE FEDERAL DO PAMPA
CAMPUS BAGÉ
ALGORITMOS E PROGRAMAÇÃO
Variáveis "string"
Na linguagem C uma cadeia de caracteres (string) é
implementada como um vetor do tipo char.
 Variáveis do tipo char são usadas para armazenar um
caractere (tamanho = 1 byte).
Exemplo:
char letra = ‘a’;
 Problema: muitas vezes precisamos trabalhar com palavras, ou
até mesmo frases; ou seja, com uma cadeia de caracteres.
 Para isso, usamos uma estrutura de dados especial chamada
vetor de caracteres:
Exemplo:
char string[20] = "aula de algoritmos";
Algoritmos e Programação – Manipulação de strings
Variáveis "string"
Na linguagem C uma cadeia de caracteres (string) é
implementada como um vetor do tipo char.
 Variáveis do tipo char são usadas para armazenar um
caractere (tamanho = 1 byte).
Exemplo:
char letra = ‘a’;
 Problema: muitas vezes precisamos trabalhar com palavras, ou
até mesmo frases; ou seja, com uma cadeia de caracteres.
 Para isso, usamos uma estrutura de dados especial chamada
vetor de caracteres (tamanho = 1 byte*(número máx. de
caracteres + 1)):
Exemplo:
char string[20] = "aula de algoritmos";
Algoritmos e Programação – Manipulação de strings
Variáveis "string"
Observação:
 Na declaração é determinada a quantidade máxima de
caracteres que poderá ser armazenada na string.
 Mas, como sabemos a real quantidade que foi armazenada na
string?
 Ocorrência de um caractere especial, o '0'.
Algoritmos e Programação – Manipulação de strings
Funções de Manipulação
de Strings (string.h) - gets
Função que permite a leitura de strings com espaços.
Sintaxe:
gets(string);
Exemplo:
char string[20];
gets(string); //aula de algoritmos
printf("%s",string); //aula de algoritmos
Algoritmos e Programação – Manipulação de strings
Funções de Manipulação
de Strings (string.h) - gets
Função que permite a leitura de strings com espaços.
Sintaxe:
gets(string);
Exemplo:
char string[20];
gets(string); //aula de algoritmos
printf("%s",string); //aula de algoritmos
Algoritmos e Programação – Manipulação de strings
Funções de Manipulação
de Strings (string.h) - puts
Função que permite a impressão de uma string na tela.
Sintaxe:
puts(string);
Exemplo:
char string[20] = "Caracteres";
puts(string); //Caracteres
Algoritmos e Programação – Manipulação de strings
Funções de Manipulação
de Strings (string.h) - puts
Função que permite a impressão de uma string na tela.
Sintaxe:
puts(string);
Exemplo:
char string[20] = "Caracteres";
puts(string); //Caracteres
Algoritmos e Programação – Manipulação de strings
Funções de Manipulação
de Strings (string.h) - strcpy
Função que permite copiar uma string para outra.
Sintaxe:
strcpy(destino,origem);
Exemplo:
char destino[20];
strcpy(destino,"String origem");
printf("%s",destino); //String origem
Algoritmos e Programação – Manipulação de strings
Funções de Manipulação
de Strings (string.h) - strcpy
Função que permite copiar uma string para outra.
Sintaxe:
strcpy(destino,origem);
Exemplo:
char destino[20];
strcpy(destino,"String origem");
printf("%s",destino); //String origem
Algoritmos e Programação – Manipulação de strings
Funções de Manipulação
de Strings (string.h) - strcat
Função que permite a concatenação de duas strings.
Sintaxe:
strcat(destino, origem);
Exemplo:
char destino[10] = "Inicio", origem[20] = "Fim";
strcat(destino,origem);
printf("%s",destino); //InicioFim
Algoritmos e Programação – Manipulação de strings
Funções de Manipulação
de Strings (string.h) - strcat
Função que permite a concatenação de duas strings.
Sintaxe:
strcat(destino,origem);
Exemplo:
char origem[10] = "Fim", destino[20] = "Inicio";
strcat(destino,origem);
printf("%s",destino); //InicioFim
Algoritmos e Programação – Manipulação de strings
Funções de Manipulação
de Strings (string.h) - strcmp
Função que permite a comparação de duas strings.
Sintaxe:
strcmp(string1, string2);
Exemplo:
char string1[10] = "Carro", string2[10] = "Moto";
printf("%d", strcmp(string1,string2)); // -1
Retorna 0 se as duas strings forem iguais
Retorna -1 se a 1ª string for menor (alfabeticamente) que a 2ª
Retorna 1 se a 1ª string for maior (alfabeticamente) que a 2ª
Algoritmos e Programação – Manipulação de strings
Funções de Manipulação
de Strings (string.h) - strcmp
Função que permite a comparação de duas strings.
Sintaxe:
strcmp(string1, string2);
Exemplo:
char string1[10] = "Carro", string2[10] = "Moto";
printf("%d", strcmp(string1,string2)); // -1
Retorna 0 se as duas strings forem iguais
Retorna -1 se a 1ª string for menor (alfabeticamente) que a 2ª
Retorna 1 se a 1ª string for maior (alfabeticamente) que a 2ª
Algoritmos e Programação – Manipulação de strings
Funções de Manipulação
de Strings (string.h) - strlen
Função que retorna o comprimento de uma string.
Sintaxe:
strlen(string);
Exemplo:
char string[10]="Fim";
printf("%dn", strlen(string)); //3
Algoritmos e Programação – Manipulação de strings
Funções de Manipulação
de Strings (string.h) - strlen
Função que retorna o comprimento de uma string.
Sintaxe:
strlen(string);
Exemplo:
char string[10]="Fim";
printf("%dn", strlen(string)); //3
Algoritmos e Programação – Manipulação de strings
Exercícios
Resolva as questões abaixo utilizando o Pseudocódigo, o Fluxograma e a
linguagem de programação C:
1. Faça um programa que receba o nome completo e salário de um funcionário,
calcule e mostre o nome e novo salário, sabendo-se que este sofreu um aumento
de 25%.
2. Faça um programa que receba o nome e o ano de nascimento de uma pessoa.
Com base no ano atual, calcule e mostre o nome seguido da idade dessa pessoa.
3. Faça um programa em que leia quatro strings pelo teclado. Depois, concatene
todas as strings lidas em uma única variável. Imprima a variável concatenada.
4. Escreva um programa que leia um nome completo do teclado e o escreva na
tela no formato Sobrenome, Nome.
Exemplo:
Nome → Fulano / Sobrenome → Silva Gates / Saída no vídeo → Silva Gates, Fulano
5. Faça um programa que leia um nome (string1) e um sobrenome (string2) e
mostre na tela:
a) Nome completo, guardado em uma string diferente das lidas (string3)
b) Quantidade de caracteres do nome, sobrenome e nome completo
Algoritmos e Programação – Manipulação de strings

Algoritmos e Programação: Manipulação de strings

  • 1.
    Manipulação de stringsManipulaçãode strings Prof. Alex Camargo alexcamargoweb@gmail.com UNIVERSIDADE FEDERAL DO PAMPA CAMPUS BAGÉ ALGORITMOS E PROGRAMAÇÃO
  • 2.
    Variáveis "string" Na linguagemC uma cadeia de caracteres (string) é implementada como um vetor do tipo char.  Variáveis do tipo char são usadas para armazenar um caractere (tamanho = 1 byte). Exemplo: char letra = ‘a’;  Problema: muitas vezes precisamos trabalhar com palavras, ou até mesmo frases; ou seja, com uma cadeia de caracteres.  Para isso, usamos uma estrutura de dados especial chamada vetor de caracteres: Exemplo: char string[20] = "aula de algoritmos"; Algoritmos e Programação – Manipulação de strings
  • 3.
    Variáveis "string" Na linguagemC uma cadeia de caracteres (string) é implementada como um vetor do tipo char.  Variáveis do tipo char são usadas para armazenar um caractere (tamanho = 1 byte). Exemplo: char letra = ‘a’;  Problema: muitas vezes precisamos trabalhar com palavras, ou até mesmo frases; ou seja, com uma cadeia de caracteres.  Para isso, usamos uma estrutura de dados especial chamada vetor de caracteres (tamanho = 1 byte*(número máx. de caracteres + 1)): Exemplo: char string[20] = "aula de algoritmos"; Algoritmos e Programação – Manipulação de strings
  • 4.
    Variáveis "string" Observação:  Nadeclaração é determinada a quantidade máxima de caracteres que poderá ser armazenada na string.  Mas, como sabemos a real quantidade que foi armazenada na string?  Ocorrência de um caractere especial, o '0'. Algoritmos e Programação – Manipulação de strings
  • 5.
    Funções de Manipulação deStrings (string.h) - gets Função que permite a leitura de strings com espaços. Sintaxe: gets(string); Exemplo: char string[20]; gets(string); //aula de algoritmos printf("%s",string); //aula de algoritmos Algoritmos e Programação – Manipulação de strings
  • 6.
    Funções de Manipulação deStrings (string.h) - gets Função que permite a leitura de strings com espaços. Sintaxe: gets(string); Exemplo: char string[20]; gets(string); //aula de algoritmos printf("%s",string); //aula de algoritmos Algoritmos e Programação – Manipulação de strings
  • 7.
    Funções de Manipulação deStrings (string.h) - puts Função que permite a impressão de uma string na tela. Sintaxe: puts(string); Exemplo: char string[20] = "Caracteres"; puts(string); //Caracteres Algoritmos e Programação – Manipulação de strings
  • 8.
    Funções de Manipulação deStrings (string.h) - puts Função que permite a impressão de uma string na tela. Sintaxe: puts(string); Exemplo: char string[20] = "Caracteres"; puts(string); //Caracteres Algoritmos e Programação – Manipulação de strings
  • 9.
    Funções de Manipulação deStrings (string.h) - strcpy Função que permite copiar uma string para outra. Sintaxe: strcpy(destino,origem); Exemplo: char destino[20]; strcpy(destino,"String origem"); printf("%s",destino); //String origem Algoritmos e Programação – Manipulação de strings
  • 10.
    Funções de Manipulação deStrings (string.h) - strcpy Função que permite copiar uma string para outra. Sintaxe: strcpy(destino,origem); Exemplo: char destino[20]; strcpy(destino,"String origem"); printf("%s",destino); //String origem Algoritmos e Programação – Manipulação de strings
  • 11.
    Funções de Manipulação deStrings (string.h) - strcat Função que permite a concatenação de duas strings. Sintaxe: strcat(destino, origem); Exemplo: char destino[10] = "Inicio", origem[20] = "Fim"; strcat(destino,origem); printf("%s",destino); //InicioFim Algoritmos e Programação – Manipulação de strings
  • 12.
    Funções de Manipulação deStrings (string.h) - strcat Função que permite a concatenação de duas strings. Sintaxe: strcat(destino,origem); Exemplo: char origem[10] = "Fim", destino[20] = "Inicio"; strcat(destino,origem); printf("%s",destino); //InicioFim Algoritmos e Programação – Manipulação de strings
  • 13.
    Funções de Manipulação deStrings (string.h) - strcmp Função que permite a comparação de duas strings. Sintaxe: strcmp(string1, string2); Exemplo: char string1[10] = "Carro", string2[10] = "Moto"; printf("%d", strcmp(string1,string2)); // -1 Retorna 0 se as duas strings forem iguais Retorna -1 se a 1ª string for menor (alfabeticamente) que a 2ª Retorna 1 se a 1ª string for maior (alfabeticamente) que a 2ª Algoritmos e Programação – Manipulação de strings
  • 14.
    Funções de Manipulação deStrings (string.h) - strcmp Função que permite a comparação de duas strings. Sintaxe: strcmp(string1, string2); Exemplo: char string1[10] = "Carro", string2[10] = "Moto"; printf("%d", strcmp(string1,string2)); // -1 Retorna 0 se as duas strings forem iguais Retorna -1 se a 1ª string for menor (alfabeticamente) que a 2ª Retorna 1 se a 1ª string for maior (alfabeticamente) que a 2ª Algoritmos e Programação – Manipulação de strings
  • 15.
    Funções de Manipulação deStrings (string.h) - strlen Função que retorna o comprimento de uma string. Sintaxe: strlen(string); Exemplo: char string[10]="Fim"; printf("%dn", strlen(string)); //3 Algoritmos e Programação – Manipulação de strings
  • 16.
    Funções de Manipulação deStrings (string.h) - strlen Função que retorna o comprimento de uma string. Sintaxe: strlen(string); Exemplo: char string[10]="Fim"; printf("%dn", strlen(string)); //3 Algoritmos e Programação – Manipulação de strings
  • 17.
    Exercícios Resolva as questõesabaixo utilizando o Pseudocódigo, o Fluxograma e a linguagem de programação C: 1. Faça um programa que receba o nome completo e salário de um funcionário, calcule e mostre o nome e novo salário, sabendo-se que este sofreu um aumento de 25%. 2. Faça um programa que receba o nome e o ano de nascimento de uma pessoa. Com base no ano atual, calcule e mostre o nome seguido da idade dessa pessoa. 3. Faça um programa em que leia quatro strings pelo teclado. Depois, concatene todas as strings lidas em uma única variável. Imprima a variável concatenada. 4. Escreva um programa que leia um nome completo do teclado e o escreva na tela no formato Sobrenome, Nome. Exemplo: Nome → Fulano / Sobrenome → Silva Gates / Saída no vídeo → Silva Gates, Fulano 5. Faça um programa que leia um nome (string1) e um sobrenome (string2) e mostre na tela: a) Nome completo, guardado em uma string diferente das lidas (string3) b) Quantidade de caracteres do nome, sobrenome e nome completo Algoritmos e Programação – Manipulação de strings