Linguagem C Strings.

Slides:



Advertisements
Apresentações semelhantes
Um programa em C Bibliotecas Variáveis globais
Advertisements

Programação II Estruturas de Dados Aula 01
Programação para Engenharia I
Profª. Leticia Lopes Leite LAPRO A - FACIN
ICC – Matrizes Jorge Macêdo.
Prof. Luis Otavio Alvares
LINGUAGEM C.
Introdução à Linguagem C
Programação II Funções especiais Ricardo de Sousa Britto
UDESC - Prof. Juliano Maia
LPG - I: Ponteiros e Vetores/Matrizes UDESC - SBS
Estruturas de Dados I Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
LINGUAGEM ESTRUTURADA TURBO C
Universidade Federal do Espírito Santo Programação II Vetores Professora: Norminda Luiza.
Linguagem C Strings.
Estruturas de Dados Homogêneas Unidimensionais – Vetores e Strings
Slides Prof. Jean SIMÃO Revisão: Prof. João FABRO
Estruturas de Dados Homogêneas Multidimensionais – Matrizes
Fundamentos de Programação 1
Revisão da Linguagem C.
Strings Definição: Não confundir caracteres com strings
O Portal do Estudante de Computação
O Portal do Estudante de Computação
Strings: Cadeia de Caracteres
Aula prática 7 Strings Monitoria de Introdução à Programação
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)
Arquivos Continuação.
Estrutura de dados II Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Estrutura de Dados Avançada
Seminário 1: Revisão de C
DAVID ANDERSON CARDOSO DANTAS
UNIDADE 5 ESTRUTURAS DE DADOS HOMOGÊNEAS
Aula Prática 12 Operações com Arquivos Monitoria
Curso de C/C++ Aula 2 Instrutor: Luiz Felipe Sotero
Computação Eletrônica
Vetor Prof. Guilherme Baião S. Silva Adaptações:
Linguagem de programação I A Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Educação Profissional Técnica de Nível Médio Curso Técnico de Informática
Aula prática 7 Strings Monitoria de Introdução à Programação
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
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.
Programação Computacional Aula 8: Entrada e Saída pelo Console Prof a. Madeleine Medrano
Programação Computacional Aula 9: Meu primeiro programa em C
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
Linguaguem de Programação II
 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
Profa. Maria Augusta Constante Puget
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)
Programação II Arquivos Autoria: Ernani Santos Modificação: Clebson Oliveira Adaptação: Claudia Boeres.
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.
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:

Linguagem C Strings

Strings em Linguagem “C” Definição de string Strings são seqüências de caracteres diversos. São conhecidos por “literais” na teoria de algoritmos estruturados, sendo representados entre aspas. Alguns exemplos de strings: “Fulano da Silva”, “? Interrogação? “, “1,234”, “0”. Em C, strings são representadas através de vetores de caracteres, terminados com o caractere de fim de string cujo valor na tabela ASCII é zero (0 ou \0).

Strings em Linguagem “C” Declaração de string Um vetor em C que pretenda armazenar uma string n caracteres deve ser alocado com n+1 posições do tipo char para conter o terminador de string. A inicialização de uma string pode ser efetuada com o uso de uma seqüência de caracteres entre aspas. Exemplos de declarações de string: char frase[] = “Primeira string”; /*Inicialização sem a dimensão */ char frase[16] = “Primeira string”; char frase[6] = {‘T’, ‘e’, ‘s’, ‘t’, ‘e’, 0); /* inicializado como um vetor de caracteres comum, ‘forçando’ o caracter terminador */ No caso do primeiro e do segundo exemplo, a representação do vetor da string frase é: ‘P’ ‘r’ ‘i’ ‘m’ ‘e’ ‘i’ ‘r’ ‘a’ ‘’ ‘f‘ ‘r’ ‘a’ ‘s’ ‘e’ 0 Onde cada quadrado representa um byte de memória (tamanho de um char).  

Strings em Linguagem “C” Operações sobre string String não é um tipo primitivo da linguagem C, por isso as seguintes operações NÃO são válidas: char str1[10]; char str2[] = “Palavra 2”; str1 = str2 /* ERRO! Não copia str2 em str1 */ if (str1 == str2) /* ERRO! Não compara str1 com str2 */ { …. } Para operar sobre strings são utilizadas funções da biblioteca string.h. Dezenas de funções com diversas variações..... 

Strings em Linguagem “C” strlen Protótipo: int strlen (char *string) Descrição: Retorna o número de caracteres de uma string (exceto o caractere de fim de string). Exemplo: char nome[] = “Fulano”; printf (“O nome possui %d letras”, strlen (nome)); ..... 

Strings em Linguagem “C” strcpy Protótipo: char *strcpy (char *string1, char *string2) Descrição: Copia o conteúdo de string2 em string1 e retorna o endereço de string. Exemplo: char str1[10]; char str2[] = “Palavra”; strcpy (str1, str2); /* Agora str1 também contém “Palavra” */

Strings em Linguagem “C” strcmp Protótipo: int strcmp (char *string1, char *string2) Descrição: Compara os conteúdos de string1 e string2 caracter a caracter e retorna 0 se string1 = string2 <0 se string1 < string2 >0 se string1 > string2 Exemplo: char nome1[] = “Fulano” char nome2[] = “Beltrano”; if (strcmp (nome1, nome2) == 0) {printf (“Nomes são iguais”);} else {printf (“Nomes são diferentes);}

Strings em Linguagem “C” strcat Protótipo: strcat (char *string_destino, char *string_origem) Descrição: Concatena os conteúdos de string1 e string2 Exemplo: char nome1[] = “Fulano” char nome2[] = “da Silva”; char nome_completo[30]=“”; strcat(nome_completo, nome1); printf (“%s\n”, nome_completo); strcat(nome_completo, nome2); Este programa imprimirá: Fulano Fulano da Silva

Strings em Linguagem “C” atoi Protótipo: int atoi(char *string) Descrição: Converte o string em um número inteiro Exemplo: int a; a = atoi(“10”); atof double atof(char *string) Descrição: Converte o string em um número em ponto flutuante(double) double d; d = atof(“101.15”);

Strings em Linguagem “C” gets Protótipo: void gets (char *string1) Descrição: Recebe uma string via teclado e armazena em string1. Os caracteres são armazenados até que o enter seja pressionado. Exemplo: char nome[10]; gets (nome);

Strings em Linguagem “C” Observações:a função gets() permite que o usuário forneça mais caracteres do que os que podem ser armazenados no vetor(o que pode causar um erro). Para evitar este problema, pode-se utilizar a função fgets: char nome[10]; fgets(nome, 10, stdin); /* ‘stdin’ é um arquivo aberto por padrão, relacionado aos dados digitados via teclado */ No exemplo mostrado, fgets receberia 9 caracteres (ou até que o usuário teclasse enter) e armazenaria os dados digitados na string nome, adicionando o caracter terminador de string. É importante observar que, caso o usuário digitasse enter antes de 9 caracteres, o caracter de nova linha (‘\n’) também seria armazenado no vetor. scanf (“%s”, str); /* Recebe uma string até que o primeiro espaço seja inserido */  

Funções em Linguagem “C” Exercício 1: Criar um programa capaz de calcular o tempo entre dois horários quaisquer de um determinado dia. O programa deve ler dois horários, no formato HH:MM:SS(dois dígitos para hora, dois para minutos e dois para segundos). O programa deve verificar se o horário é válido(HH entre 00 e 23, MM entre 00 e 59, SS entre 00 e 59). O programa deve ter uma função para calcular a quantidade de segundos em um horário, e outra função para calcular e imprimir a quantidade de horas, minutos e segundos em uma quantidade de segundos;

Funções em Linguagem “C” Exercício 2: Faça um programa que dadas 2 palavras, determine: Se as palavras são iguais; Caso as palavras sejam diferentes, qual delas tem maior comprimento (não esquecer a possibilidade de existirem palavras diferentes de mesmo tamanho); Verifique se a segunda palavra é uma sub string da primeira: Exemplo: Palavra 1= casamento Palavra 2 = casa

Funções em Linguagem “C” Exercício 3: Faça um programa que leia 10 nomes completos do teclado, e ao final apresente uma listagem dos nomes no formato: Sobrenome, Primeiro_Nome; Exemplo: João Alberto Fabro José da Silva Josué dos Santos ------------------------ Fabro, João Silva, José Santos, Josué