SlideShare uma empresa Scribd logo
1 de 8
Programação I: Strings
Rodrigo Paes
Rodrigo Paes –
r0drigopaes@yahoo.com.br
Instituto de Computação – UFAL
Arrays de caracteres
 char c[10]
 c[9] = „a‟;
 Um array cujo elementos são do tipo char são
chamados de
 Cadeia de Caracteres ou String
Rodrigo Paes – r0drigopaes@yahoo.com.br
A B A C A T E I R O
A B A C A T E I R a
Instituto de Computação – UFAL
Strings
 C trata as strings de forma diferente
 char palavra[11];
 No scanf
 scanf(“%s”, palavra );
 No printf
 printf(“%s”, palavra );
 Na inicialização
 char palavra[11] = "abacateiro";
Rodrigo Paes – r0drigopaes@yahoo.com.br
Instituto de Computação – UFAL
0
 Mas se fizermos:
 char palavra[255] = “programar é massa!”;
 printf(“%sn”, palavra);
 Só inicializamos 18 caracteres da string, e os outros
237 caracteres? Estão com lixo?
 Mas se eles estão com lixo, porque o printf não
imprime o lixo?
Rodrigo Paes – r0drigopaes@yahoo.com.br
Instituto de Computação – UFAL
0
 Em C, existe um caracter que delimita o final da String
 „0‟
 Esse caracter é automaticamente inserido ao final da
string na
 Inicialização
 scanf
 O printf(“%s”,…) imprime todos os caracteres até
encontrar o 0
 Por isso o lixo é ignorado!
 Portanto, devemos sempre deixar um espaço extra para
acomodar o caracter 0
Rodrigo Paes – r0drigopaes@yahoo.com.br
Instituto de Computação – UFAL
Exercícios
 Tamanho de uma frase
 Lista de exercícios:
 http://goo.gl/aRXwv
 Instruções
 O nome de cada arquivo deve ser o número da questão.
 Exemplo: 1.c, 2.c, 3.c ...
 Compacte todos os arquivos com o seu nome e envie para
 monitoria-p1@googlegroups.com
Rodrigo Paes – r0drigopaes@yahoo.com.br
Instituto de Computação – UFAL
Funções de strings
 Existem várias funções para manipular strings
 string.h
 Exemplos
 strcpy
 strcmp
 strlen
 strupr
 strlwr
 strstr
 …
 Muitas outras, olhem a documentação de string.h
Rodrigo Paes – r0drigopaes@yahoo.com.br
Instituto de Computação – UFAL
Exercícios (desafios)
 Tradução
 TeX
 Permutação comum
 Palíndromo
 Buracos no texto
Rodrigo Paes – r0drigopaes@yahoo.com.br

Mais conteúdo relacionado

Semelhante a Strings C - Funções e manipulação

Introdução a Linguagem C
Introdução a Linguagem CIntrodução a Linguagem C
Introdução a Linguagem Capolllorj
 
unidade04-c3-handout.pdf
unidade04-c3-handout.pdfunidade04-c3-handout.pdf
unidade04-c3-handout.pdfAlexSouza974126
 
Aula 7 decisao - Programação 1
Aula 7 decisao - Programação 1Aula 7 decisao - Programação 1
Aula 7 decisao - Programação 1Isaac Barros
 
Aula 12 funcoes - Programação 1
Aula 12 funcoes - Programação 1Aula 12 funcoes - Programação 1
Aula 12 funcoes - Programação 1Isaac Barros
 
Apostila Algoritmos e Estrutura de Dados (AEDS)
Apostila Algoritmos e Estrutura de Dados (AEDS)Apostila Algoritmos e Estrutura de Dados (AEDS)
Apostila Algoritmos e Estrutura de Dados (AEDS)Ricardo Terra
 
Linguagem c wellington telles - aula 03
Linguagem c   wellington telles - aula 03Linguagem c   wellington telles - aula 03
Linguagem c wellington telles - aula 03profwtelles
 
Aula 6 - Programação 1
Aula 6 - Programação 1Aula 6 - Programação 1
Aula 6 - Programação 1Isaac Barros
 
Aula 13 ponteiros - Programação 1
Aula 13 ponteiros - Programação 1Aula 13 ponteiros - Programação 1
Aula 13 ponteiros - Programação 1Isaac Barros
 
Introdução a linguagem Swift
Introdução a linguagem SwiftIntrodução a linguagem Swift
Introdução a linguagem SwiftGabriel Rodrigues
 
Estrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na práticaEstrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na práticaLeinylson Fontinele
 
Exemplos registros e funções
Exemplos registros e funçõesExemplos registros e funções
Exemplos registros e funçõesCarla Lee
 
Algoritmos e Técnicas de Programação - Aula 06
Algoritmos e Técnicas de Programação - Aula 06Algoritmos e Técnicas de Programação - Aula 06
Algoritmos e Técnicas de Programação - Aula 06thomasdacosta
 
Introducao ao Ruby
Introducao ao RubyIntroducao ao Ruby
Introducao ao RubyKlaus Paiva
 
Aula 9 repeticao - Programação 1
Aula 9 repeticao - Programação 1Aula 9 repeticao - Programação 1
Aula 9 repeticao - Programação 1Isaac Barros
 

Semelhante a Strings C - Funções e manipulação (20)

Introdução a Linguagem C
Introdução a Linguagem CIntrodução a Linguagem C
Introdução a Linguagem C
 
Minicurso Java && Cl
Minicurso Java && ClMinicurso Java && Cl
Minicurso Java && Cl
 
unidade04-c3-handout.pdf
unidade04-c3-handout.pdfunidade04-c3-handout.pdf
unidade04-c3-handout.pdf
 
Linguagem C - Strings
Linguagem C - StringsLinguagem C - Strings
Linguagem C - Strings
 
Aula 7 decisao - Programação 1
Aula 7 decisao - Programação 1Aula 7 decisao - Programação 1
Aula 7 decisao - Programação 1
 
Aula 12 funcoes - Programação 1
Aula 12 funcoes - Programação 1Aula 12 funcoes - Programação 1
Aula 12 funcoes - Programação 1
 
Apostila Algoritmos e Estrutura de Dados (AEDS)
Apostila Algoritmos e Estrutura de Dados (AEDS)Apostila Algoritmos e Estrutura de Dados (AEDS)
Apostila Algoritmos e Estrutura de Dados (AEDS)
 
Linguagem c wellington telles - aula 03
Linguagem c   wellington telles - aula 03Linguagem c   wellington telles - aula 03
Linguagem c wellington telles - aula 03
 
Linguagem C clecioamerico
Linguagem C clecioamericoLinguagem C clecioamerico
Linguagem C clecioamerico
 
Ling c
Ling cLing c
Ling c
 
Aula 6 - Programação 1
Aula 6 - Programação 1Aula 6 - Programação 1
Aula 6 - Programação 1
 
Aula 13 ponteiros - Programação 1
Aula 13 ponteiros - Programação 1Aula 13 ponteiros - Programação 1
Aula 13 ponteiros - Programação 1
 
Introdução a linguagem Swift
Introdução a linguagem SwiftIntrodução a linguagem Swift
Introdução a linguagem Swift
 
Estrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na práticaEstrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na prática
 
Exemplos registros e funções
Exemplos registros e funçõesExemplos registros e funções
Exemplos registros e funções
 
Algoritmos e Técnicas de Programação - Aula 06
Algoritmos e Técnicas de Programação - Aula 06Algoritmos e Técnicas de Programação - Aula 06
Algoritmos e Técnicas de Programação - Aula 06
 
Introducao ao Ruby
Introducao ao RubyIntroducao ao Ruby
Introducao ao Ruby
 
Java4
Java4Java4
Java4
 
Aula 9 repeticao - Programação 1
Aula 9 repeticao - Programação 1Aula 9 repeticao - Programação 1
Aula 9 repeticao - Programação 1
 
programação c 10 aula
programação c 10 aulaprogramação c 10 aula
programação c 10 aula
 

Mais de Isaac Barros

Aula 15 recursao-organizacao-arquivos - Programação 1
Aula 15 recursao-organizacao-arquivos - Programação 1Aula 15 recursao-organizacao-arquivos - Programação 1
Aula 15 recursao-organizacao-arquivos - Programação 1Isaac Barros
 
Aula 14 estruturas - Programação 1
Aula 14 estruturas - Programação 1Aula 14 estruturas - Programação 1
Aula 14 estruturas - Programação 1Isaac Barros
 
Aula 10 arrays - Programação 1
Aula 10 arrays - Programação 1Aula 10 arrays - Programação 1
Aula 10 arrays - Programação 1Isaac Barros
 
Aula 8 principios_programacao - Programação 1
Aula 8 principios_programacao - Programação 1Aula 8 principios_programacao - Programação 1
Aula 8 principios_programacao - Programação 1Isaac Barros
 
Aula 4 - Programação 1
Aula 4 - Programação 1Aula 4 - Programação 1
Aula 4 - Programação 1Isaac Barros
 
Aula 3 - Programação 1
Aula 3 - Programação 1Aula 3 - Programação 1
Aula 3 - Programação 1Isaac Barros
 
Aula 2 - Programação 1
Aula 2 - Programação 1Aula 2 - Programação 1
Aula 2 - Programação 1Isaac Barros
 
Aula 1 - Programação 1
Aula 1 - Programação 1Aula 1 - Programação 1
Aula 1 - Programação 1Isaac Barros
 
Aula 16 arquivos - Programação 1
Aula 16 arquivos - Programação 1Aula 16 arquivos - Programação 1
Aula 16 arquivos - Programação 1Isaac Barros
 

Mais de Isaac Barros (9)

Aula 15 recursao-organizacao-arquivos - Programação 1
Aula 15 recursao-organizacao-arquivos - Programação 1Aula 15 recursao-organizacao-arquivos - Programação 1
Aula 15 recursao-organizacao-arquivos - Programação 1
 
Aula 14 estruturas - Programação 1
Aula 14 estruturas - Programação 1Aula 14 estruturas - Programação 1
Aula 14 estruturas - Programação 1
 
Aula 10 arrays - Programação 1
Aula 10 arrays - Programação 1Aula 10 arrays - Programação 1
Aula 10 arrays - Programação 1
 
Aula 8 principios_programacao - Programação 1
Aula 8 principios_programacao - Programação 1Aula 8 principios_programacao - Programação 1
Aula 8 principios_programacao - Programação 1
 
Aula 4 - Programação 1
Aula 4 - Programação 1Aula 4 - Programação 1
Aula 4 - Programação 1
 
Aula 3 - Programação 1
Aula 3 - Programação 1Aula 3 - Programação 1
Aula 3 - Programação 1
 
Aula 2 - Programação 1
Aula 2 - Programação 1Aula 2 - Programação 1
Aula 2 - Programação 1
 
Aula 1 - Programação 1
Aula 1 - Programação 1Aula 1 - Programação 1
Aula 1 - Programação 1
 
Aula 16 arquivos - Programação 1
Aula 16 arquivos - Programação 1Aula 16 arquivos - Programação 1
Aula 16 arquivos - Programação 1
 

Strings C - Funções e manipulação

  • 1. Programação I: Strings Rodrigo Paes Rodrigo Paes – r0drigopaes@yahoo.com.br
  • 2. Instituto de Computação – UFAL Arrays de caracteres  char c[10]  c[9] = „a‟;  Um array cujo elementos são do tipo char são chamados de  Cadeia de Caracteres ou String Rodrigo Paes – r0drigopaes@yahoo.com.br A B A C A T E I R O A B A C A T E I R a
  • 3. Instituto de Computação – UFAL Strings  C trata as strings de forma diferente  char palavra[11];  No scanf  scanf(“%s”, palavra );  No printf  printf(“%s”, palavra );  Na inicialização  char palavra[11] = "abacateiro"; Rodrigo Paes – r0drigopaes@yahoo.com.br
  • 4. Instituto de Computação – UFAL 0  Mas se fizermos:  char palavra[255] = “programar é massa!”;  printf(“%sn”, palavra);  Só inicializamos 18 caracteres da string, e os outros 237 caracteres? Estão com lixo?  Mas se eles estão com lixo, porque o printf não imprime o lixo? Rodrigo Paes – r0drigopaes@yahoo.com.br
  • 5. Instituto de Computação – UFAL 0  Em C, existe um caracter que delimita o final da String  „0‟  Esse caracter é automaticamente inserido ao final da string na  Inicialização  scanf  O printf(“%s”,…) imprime todos os caracteres até encontrar o 0  Por isso o lixo é ignorado!  Portanto, devemos sempre deixar um espaço extra para acomodar o caracter 0 Rodrigo Paes – r0drigopaes@yahoo.com.br
  • 6. Instituto de Computação – UFAL Exercícios  Tamanho de uma frase  Lista de exercícios:  http://goo.gl/aRXwv  Instruções  O nome de cada arquivo deve ser o número da questão.  Exemplo: 1.c, 2.c, 3.c ...  Compacte todos os arquivos com o seu nome e envie para  monitoria-p1@googlegroups.com Rodrigo Paes – r0drigopaes@yahoo.com.br
  • 7. Instituto de Computação – UFAL Funções de strings  Existem várias funções para manipular strings  string.h  Exemplos  strcpy  strcmp  strlen  strupr  strlwr  strstr  …  Muitas outras, olhem a documentação de string.h Rodrigo Paes – r0drigopaes@yahoo.com.br
  • 8. Instituto de Computação – UFAL Exercícios (desafios)  Tradução  TeX  Permutação comum  Palíndromo  Buracos no texto Rodrigo Paes – r0drigopaes@yahoo.com.br