Profa. Maria Augusta Constante Puget

Slides:



Advertisements
Apresentações semelhantes
Profª. Leticia Lopes Leite LAPRO A - FACIN
Advertisements

Algoritmos e Estrutura de Dados I
ICC – Matrizes Jorge Macêdo.
Prof. Luis Otavio Alvares
Introdução à Linguagem C
Programação II Funções especiais Ricardo de Sousa Britto
Linguagem C LPG-I – Variáveis Estruturadas – Vetores
UDESC - Prof. Juliano Maia
LINGUAGEM ESTRUTURADA TURBO C
Universidade Federal do Espírito Santo Programação II Vetores Professora: Norminda Luiza.
Linguagem C Strings.
Vetores, Matrizes e Funções
Estruturas de Dados Homogêneas Unidimensionais – Vetores e Strings
Slides Prof. Jean SIMÃO Revisão: Prof. João FABRO
Linguagem C Strings.
Fundamentos de Programação 1
Ponteiros.
Strings Definição: Não confundir caracteres com strings
O Portal do Estudante de Computação
O Portal do Estudante de Computação
Aula prática 7 Strings Monitoria de Introdução à Programação
1 Ponteiros Ponteiros são variáveis que guardam localizações em memória. A declaração de uma variável ponteiro x para um dado tipo type é type *x; Essa.
PROGRAMAÇÃO ESTRUTURADA II
Linguagem de Programação II Parte VII
Ordenação e Pesquisa de Dados Marco Antonio Montebello Júnior
CADEIA DE CARACTERES (Strings)
Curso de C/C++ Aula 2 Instrutor: Luiz Felipe Sotero
Computação Eletrônica
Algoritmo e Programação
Vetor Prof. Guilherme Baião S. Silva Adaptações:
Educação Profissional Técnica de Nível Médio Curso Técnico de Informática
3. Introdução à Linguagem C
Aula prática 7 Strings Monitoria de Introdução à Programação
Algoritmos e Estrutura de Dados I Jean Carlo Mendes
Operações com Arquivos Monitoria A estrutura FILE  É como um tipo de dado, mas não é um tipo propriamente dito  Definido no arquivo cabeçalho.
Estruturas de Dados Aula 6: Cadeias de Caracteres
STRINGS Dilvan Moreira (baseado no livro Big Java e Z. Liang)
Programação de Computadores I – Arquivos
Linguagem C - Funções Automação Industrial Informática Básica
CES-10 INTRODUÇÃO À COMPUTAÇÃO
1 Introdução à Linguagem C Strings Deise Saccol Adaptado de slides das Profas. Patrícia Jaques e Mônica Py.
 2000 Prentice Hall, Inc. All rights reserved. 1 Capítulo 8 - Caracteres e Strings Sumário 8.1Introdução 8.2Conceitos Fundamentais de Strings e Caracteres.
1 Introdução à Linguagem C Strings Deise Saccol Adaptado de slides das Profas. Patrícia Jaques e Mônica Py.
Sistemas Operativos Paulo Marques Departamento de Eng. Informática Universidade de Coimbra 2006/2007 Breve Introdução à Linguagem C.
DSC/CCT/UFCG Carga Horária: 60 h Profs.: José Eustáquio Rangel de Queiroz Roberto Medeiros de Faria Ulrich Schiel José Eustáquio Rangel.
Programação Computacional Aula 8: Entrada e Saída pelo Console Prof a. Madeleine Medrano
Aula prática 7 Strings Monitoria de Introdução à Programação.
Algoritmo e Estrutura de Dados I Aulas 12 – Linguagem C Strings Márcia Marra
Profa. Maria Augusta Constante Puget
Profa. Maria Augusta Constante Puget
PROGRAMAÇÃO II – PARTE 6 Profa. Maria Augusta Constante Puget.
Linguaguem de Programação II
Estrutura de Dados Revisão Professor Luiz José Hoffmann Filho
 O que são arrays:  estruturas de dados homogêneas  coleção de elementos do mesmo tipo referenciada por um nome comum  um array pode ser imaginado.
Estruturas Homogêneas – Vetores e Matrizes
Introdução à Linguagem C
11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)
Linguagem de Programação 11 Estruturas de Decisão e Repetição. Prof. Luiz José Hoffmann Filho
Aula prática 7 Strings Monitoria de Introdução à Programação.
Linguagem de Programação
Arrays e Matrizes na Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)
PCI- Vetores Profa. Mercedes Gonzales Márquez. Aula 5 - VetoresAlgoritmos e Estruturas de Dados I Sequência de valores todos do mesmo tipo Nome único.
Computação – Informática Aula N. 05 Prof. SIMÃO Jean Marcelo SIMÃO Linguagem C “Matrizes em C”
Fundamentos de Programação 1 Slides C – Número 4 Prof. SIMÃO Jean Marcelo SIMÃO Estrutura de Dados Homogêneas “vetores de números e de caracteres”
Estrutura de Dados STRUCTS Dilvan Moreira. Objetivos  Entender o que são e como usar:  Estrutura de Dados para a Linguagem C  Structs (Registros)
Estruturas Homogêneas - Vetores
1 Aula 07 Strings Prof. Filipe Mutz. 2 Em nossos programas ainda não vimos como armazenar palavras e textos, e eles são muito importantes! Exemplos: Programas.
Introdução à Orientação a Objetos em Java Prof. Gustavo Wagner (Alterações) Slides originais: Prof. Tiago Massoni Desenvolvimento de Sistemas FATEC-PB.
FUNÇÕES Dilvan Moreira (baseado em material de Z. Liang)
Aula Prática 7 STRINGS Monitoria  Um dos tipos de arranjos que mais ocorre em C é o arranjo de caracteres, ou string. C não suporta um tipo básico.
Transcrição da apresentação:

Profa. Maria Augusta Constante Puget Programação II – Parte 7 Profa. Maria Augusta Constante Puget

Strings em C (1) Strings (Inglês) são cadeias ou sequências ordenadas de caracteres. A linguagem C, ao contrário de outras linguagens de programação, não possui um tipo de dados correspondente às strings; no lugar, usam-se matrizes unidimensionais (vetores) do tipo char. Em C, strings são vetores de caracteres terminados pelo caractere NULL ('\0'). Exemplo de declaração e inicialização dos elementos de uma string: char nome[] = {‘M', ‘a', ‘r', ‘i', ‘a', '\0'};

Strings em C (2) Há ainda uma notação abreviada que equivale à notação anterior e elimina a necessidade de colocar o caractere terminador: char nome[] = “Maria”; Assim como nos vetores, podemos acessar e modificar elementos individuais de uma string. Podemos também diminuir o tamanho de uma string: uma vez que a única marcação do tamanho é o terminador \0, colocar um terminador em outro local determinará o novo final da string. No entanto, aumentar o tamanho da string já é mais difícil.

A Função gets - Leitura de Strings em C (1) Embora a função scanf possa ser usada pra se fazer a entrada de strings em um programa em C, a função gets (stdio.h) é mais conveniente. A função gets lê uma cadeia de caracteres do teclado enquanto não é pressionada a tecla ENTER. Todos os caracteres são armazenados na string e é incluído automaticamente o caracter NULL no final.

A Função gets - Leitura de Strings em C (2) /* Exemplo de uso da função gets para leitura de string */ #include <stdio.h> #include <stdlib.h> int main(){ char nome[80]; char saudacao[] = "Saudacoes, "; printf("Digite o seu nome: "); gets(nome); printf("Ola, %s!\n", nome); printf("%s %s!\n", saudacao, nome); system("pause"); return 0; }

A Função puts - Escrita de Strings em C (1) A função puts é o complemento da função gets. O propósito da função puts é imprimir uma única string por vez. Cada string impressa com puts termina por um caracter de nova linha. Isto é, as duas instruções seguintes têm o mesmo efeito: printf("%s\n",nome); puts(nome); /* Exemplo de uso da função puts para escrita de string */ #include <stdio.h> #include <stdlib.h> int main(){ char nome[80]; printf("Digite o seu nome: "); gets(nome); puts("Ola, "); puts(nome); system("pause"); return 0; }

Outras funções para manipulação de Strings (1) A biblioteca padrão fornece várias funções úteis para manipular strings. Para usá-las, deve-se incluir o cabeçalho string.h no início dos seus arquivos. A função strlen retorna o tamanho, em caracteres, de uma string dada. /* Mostra o uso de strlen */ #include <stdio.h> #include <stdlib.h> #include <string.h> int main(){ char nome[80]; int len; printf("Digite o seu nome: "); gets(nome); len = strlen(nome); printf("%s, o seu nome tem %i caracteres.\n", nome, len); system("pause"); return 0; }

Outras funções para manipulação de Strings (2) A função strcat concatena uma cadeia de caracteres a outra, ou seja, acrescenta uma cadeia de caracteres ao final da outra. Ela recebe como argumentos dois endereços de variáveis do tipo char e concatena a segunda na primeira. /* Mostra o uso de strcat */ #include <stdio.h> #include <stdlib.h> #include <string.h> int main(){ char nome[80], sobrenome[40]; printf("Digite o seu primeiro nome: "); gets(nome); printf("Digite o seu sobrenome: "); gets(sobrenome); strcat(nome, " "); strcat(nome, sobrenome); printf("O seu nome completo: %s.\n", nome); system("pause"); return 0; }

Outras funções para manipulação de Strings (3) Se você tentar criar duas strings com o mesmo conteúdo e compará-las como faria com números, utilizando o operador relacional == verá que elas "não são iguais". Isso ocorre porque, na verdade, o que está sendo comparado são os endereços de memória onde estão guardadas as strings e não o seu conteúdo. Para comparar o conteúdo de duas strings, deve-se usar a função strcmp (ou suas variantes). Assim, para comparar a string s1 com a string s2, utiliza-se: strcmp(s1, s2)

Outras funções para manipulação de Strings (4) O valor de retorno desta função é: Menor que zero se s1 for menor que s2; Igual a zero se s1 e s2 são iguais; Maior que zero se s1 for maior que s2. Pode parecer estranho dizer que uma string é menor ou maior que outra; na verdade essa comparação é entre a primeira letra que difere nas duas strings. Assim, se tivermos s1 = "abc" e s2 = "abd", diremos que s2 é maior que s1, pois na primeira posição em que as duas strings diferem, a letra em s2 é "maior". É importante notar que a comparação feita por strcmp distingue maiúsculas de minúsculas. Isto é, as strings "ABC" e "abc" não são iguais para essa função. As variantes mais usadas de strcmp são: strncmp - Compara apenas os n primeiros caracteres das duas strings, sendo n um terceiro argumento. stricmp - Compara duas strings sem distinção entre maiúsculas e minúsculas. A sintaxe é igual à de strcmp. Essa função não faz parte da biblioteca padrão, mas é comumente encontrada como extensão particular de várias delas.

Outras funções para manipulação de Strings (5) Um exemplo que imprime o valor retornado por strcmp em várias situações: /* Mostra o uso de strcmp */ #include <stdio.h> #include <stdlib.h> #include <string.h> int main(){ printf("%i\n", strcmp("A", "A")); printf("%i\n", strcmp("A", "B")); printf("%i\n", strcmp("B", "A")); printf("%i\n", strcmp("casas", "casa")); system("pause"); return 0; }

Outras funções para manipulação de Strings (6) A função strcpy copia o conteúdo de uma string para outra e coloca um terminador de string ao final da string copiada. Sua sintaxe é strcpy (destino, origem). /* Mostra o uso de strcpy */ #include <stdio.h> #include <stdlib.h> #include <string.h> int main(){ char nome1[80], nome2[80]; printf("Digite um nome: "); gets(nome1); printf("Voce digitou: %s\n", nome1); strcpy(nome2, nome1); printf("Agora as duas strings tem o mesmo conteudo: %s, %s\n", nome1, nome2); system("pause"); return 0; }

Outras funções para manipulação de Strings (7) As funções strncat(), strncmp(), e strncpy() são semelhantes, respectivamente a strcat(), strcmp(), e strcpy(). A diferença entre elas está no fato de que as primeiras recebem um terceiro argumento indicando o número de caracteres a processar. Por exemplo: A função strncat() concatena n caracteres da segunda cadeia na primeira. A função strncmp() compara os n primeiros caracteres das cadeias. A função strncpy() copia os n primeiros caracteres da segunda cadeia para a primeira.