CCO 016 Fundamentos de Programação

Documentos relacionados
Aula 9 Oficina de Programação Strings. Profa. Elaine Faria UFU

Índice Valor C A D E I A \0 memória

Vetores II. Strings Leitura e exibição Biblioteca string.h Operações com Strings. Matrizes Definição de Acesso Operações com Matrizes

SSC304 Introdução à Programação Para Engenharias. Manipulação de Strings. GE4 Bio

Vetores II Strings Leitura e exibição Biblioteca string.h Operações com Strings Matrizes Definição de Acesso Operações com Matrizes

3. Linguagem de Programação C

MC-102 Aula 11 Strings

Caracteres. Caracteres são representados através de códigos numéricos. Tabela de códigos: Define correspondência entre caracteres e códigos numéricos

Estruturas de Dados Aula 6: Cadeias de 28/03/2010

Estruturas de Dados Aula 6: Cadeias de Caracteres

CURSO BÁSICO DE PROGRAMAÇÃO AULA 11. Revisão Aula Anterior Vetores Cadeia de Caracteres

CURSO BÁSICO DE PROGRAMAÇÃO AULA 15. Revisão Vetores e Matrizes Trabalho

Caracteres e Cadeias de Caracteres

Cadeias de Caracteres (Strings)

Métodos Computacionais em Física

Curso Básico de Programação Aula 11. Revisão Aula Anterior Laços de Repetição While; Do-While; For.

Aula 03. Agregados Homogêneos Vetores String

Lista de Exercícios STRING LINGUAGEM DE PROGRAMAÇÃO PROF. EDUARDO SILVESTRI.

Vetores e Strings. 4. Funções Básicas para manipulação de Strings. A função gets() lê uma string do teclado. Sua forma geral é:

Strings. Introdução. Definição de strings. Criação/Declaração de strings. Inicialização de strings. Manipulação de strings. Exemplos.

Apêndice B. Cadeias de Caracteres (Strings)

Introdução à Linguagem C. Strings. Laboratório de Programação Prof.Alfredo Parteli Gomes

Disciplina de Algoritmos e Programação

Char e Strings de Caracteres

Exemplos. char c; int i=67;... c= A ; c=c+1; if (c== B )... c=i; i=c; i++; if (i>= C )...

cadeia de caracteres (string) INF Programação I Prof. Roberto Azevedo

Aula 05 -Introdução àlinguagc Programação: Estr. Dados Strings

INF 1620 P1-04/10/03 Questão 1 Nome:

Estruturas de Dados. Profa. Juliana Pinheiro Campos

Char e Strings de Caracteres

Vetores e Strings. printf ("\na string %s nao esta contida no vetor de %s", string, "strings.\n");

Linguagem de Programação I Vetores e Strings. Thiago Leite Francisco Barretto

INF 1005 Programação I

Introdução à Programação. Strings

CURSO BÁSICO DE PROGRAMAÇÃO AULA 16. Ordenação Revisão para a prova

SITUAÇÃO VETORES. Imagine o seguinte problema:

Exercícios sobre textos; Alocação dinâmica.

INSTITUTO FEDERAL DE! EDUCAÇÃO, CIÊNCIA E TECNOLOGIA RIO GRANDE DO NORTE

Métodos Computacionais. Strings (Vetor de Caracteres)

Programação de Computadores II. Cap. 7 Cadeias de Caracteres

Computação Eletrônica. Strings. Prof: Luciano Barbosa. CIn.ufpe.br

Introdução a Programação. Strings (Vetor de Caracteres)

Tratamento de Caracteres

Strings. Adaptado de Deise Saccol

1ª Lista de Exercícios

Algoritmos e Programação

Variáveis indexadas (arrays)

CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA : INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO ASSUNTO: C

Vetores e Matrizes. Conceito. Conceito. Conceito. Conceito. Conceito. Variáveis Compostas Homogêneas. Matriz

CCO 016 / COM 110 Fundamentos de Programação

Computação 2. Aula 3. Diego Addan Vetores de caracteres (strings)

INF 1620 P1-16/09/06 Questão 1 Nome:

Algoritmos e Programação de Computadores Profs: Ronaldo Castro de Oliveira Anilton Joaquim da Silva

Caracteres, Vetores e Matrizes

USP-ICMC-BInfo. Vetores em C. SCC501 - ICC-II 2011 Prof. João Luís

Algoritmos e Lógica de Programação 80 horas // 4 h/semana. Para começar... Strings. Para começar... Strings. Exemplo...

#include <stdio.h> #define nl 3 #define nc 4 main () { int matriz[nl][nc],*p,i; for (i=0, p=&matriz[0][0];i<nl*nc;i++) *(p++)=i+1; for (i=0,

Aula 8 - Matrizes e Strings

ESTRUTURAS COMPOSTAS VETOR

Programação de Computadores II. Cap. 7 Cadeias de Caracteres 1/2

Módulo 7 Cadeias de Caracteres

CCO 016 / COM 110 Fundamentos de Programação

P2 Programação II Departamento de Informática/PUC-Rio

Strings. Todas as funções apresentadas neste documento estão no arquivo de cabeçalho string.h.

Estruturas de Dados. Nem sempre, a manipulação de dados é feita por simples elementos...

3.1 - Funções para manipular dados de entrada e saída padrão

Estruturas de Dados. Nem sempre, a manipulação de dados é feita por simples elementos... Vetores, Matrizes e Strings Introdução à Computação 1 de 27

Computação Informática

Programação e Sistemas de Informação

Departamento de Sistemas de Computação Universidade de São Paulo Laboratório de Introdução a Ciência de Computação I.

INF 1620 P1-11/04/08 Questão 1 Nome:

ESTRUTURAS COMPOSTAS VETOR

Linguagem de Programação

Sumário. Introdução à Ciência da Computação. Ponteiros em C. Introdução. Definição. Por quê ponteiros são importantes?

Programação de Computadores II

Introdução à Programação C

Curso de C para Engenharias

Aula 15: Vetores e Matrizes em C

Linguagem C Parte 4 - Extra

Vetores. Vetores. Vetores. Vetores. Vetores. Algoritmos e Lógica de Programação. Vetores

Linguagem C: Tipos básicos de dados escalares e cadeia de caracteres. Prof. Leonardo Barreto Campos 1

ESTRUTURAS COMPOSTAS

Introdução a Programação. Manipulando Arquivos em Modo Texto

Aula 2 Comandos de Decisão

Aluno: Valor Nota Q1 3.0 Q2 2.5 Q3 2.5 Q4 2.0 Total 10.0

LINGUAGEM C: ARRAYS DE CARACTERES: STRINGS

CCO 016 Fundamentos de Programação

Lista de Exercícios de Algoritmos - 04 Para cada um dos exercícios abaixo, faça um programa (em laboratório) que teste a função.

x=0; y=x+1; x=&y+2; x 1000 y 1004

Programação Estruturada

Tabela ASCII de caracteres de controle

INF 1620 P1-11/04/03 Questão 1 Nome:

Treinamento Olimpíada Brasileira de Informática

Estrutura de Dados. Cadeia de Caracteres. Roberto Araujo Ago/2013

O vetor é provavelmente um dos mais simples e importantes tipos agregados. Através do seu uso, podemos

Mac em C. Resuminho e Exercícios P3

Cadeias de Caracteres

char *strchr (const char *str, int ch);

Computação 2. Aula 7. Profª. Fabiany Ponteiros

Transcrição:

CCO 016 Fundamentos de Programação Prof. Roberto Affonso da Costa Junior Universidade Federal de Itajubá

AULA 10 Agregados Homogêneos Variáveis Indexadas Cadeia de Caracteres String

Cadeia ou string O Cadeia ou string? É a coleção de caracteres. Qual a diferença entre Vetor de Caracter e String? É o caractere nulo ('\0') que é interpretado como fim da parte relevante do vetor

#include <stdio.h> #include <string.h> int main() { Programa 1 char st[100]; //Vetor de caracter int i; st[0] = 'A'; st[1] = 'B'; st[2] = 'C'; st[3] = '\0'; st[4] = 'D';

Programa 1 } printf("imprimindo a string\n"); printf("%s\n",st); printf("imprimindo o vetor de caracter\n"); for (i = 0; i < 5; i++) { printf("%c", st[i]); } printf("\n"); return 0;

Saída do programa 1 e comentários O que o programa imprimiu? Imprimindo a string ABC Imprimindo o vetor de caracter ABCD Qual a diferença? O caractere nulo ('\0')

Biblioteca string.h Para o programa anterior você declarou a include string.h, contudo, ela não foi necessária, pois não utiliza nenhuma função dessa biblioteca. Vamos colocar no exercício anterior, embaixo do printf("\n"); e antes do return 0; o seguinte comando da biblioteca string.h printf( tamanho de st = %d\n, strlen(st));

O que saiu? Qual foi o resultado do printf? Porque?

#include <stdio.h> #include <string.h> int main() { Programa 2 char st[100] = "Eu amo programar"; //Vetor de caracter int i; printf("imprimindo a string\n"); printf("%s\n",st);

Programa 2 printf("imprimindo o vetor de caracter\n"); } for (i = 0; i < strlen(st); i++) { printf("%c", st[i]); } printf("\n"); printf("tamanho de st = %d\n", strlen(st)); return 0;

Saída do programa 2 O que o programa imprimiu? Imprimindo a string Eu amo programar Imprimindo o vetor de caracter Eu amo programar tamanho de st = 15 Porque os dois sairão iguais? Qual a diferença entre eles?

#include <stdio.h> #include <string.h> int main() { Programa 3 char st1[20], st2[20]; //Vetor de caracter int i, n; printf("entre com uma palavra: "); scanf(" %s",st1); n = strlen(st1); //Tamanho de st1

Programa 3 for (i = n - 1; i > -1 ; --i) } { st2[i] = st1[n - 1 - i]; } printf("st1 = %s\n", st1); printf("st2 = %s\n", st2); return 0;

Perguntas do programa 3 Se você digitar seu primeiro nome como ele sai em st2? Qual o tamanho do seu primeiro nome? É o valor de n? Você pode imprimir esse valor? O que o laço for está fazendo com seu primeiro nome?

função strcmp() O nome é uma abreviatura de string compare ; Recebe duas strings e compara as duas lexicograficamente. Ela devolve um número negativo se a primeira string for lexicograficamente menor que a segunda, devolve 0 se as duas strings são iguais e devolve um número positivo se a primeira string for lexicograficamente maior que a segunda.

#include <stdio.h> #include <string.h> int main() { } Programa 4 char st1[20], st2[20]; //Vetor de caracter printf("entre com uma palavra: "); scanf(" %s",st1); printf("entre com outra palavra: "); scanf(" %s",st2); printf("a diferença entre elas é: %d\n", strcmp(st1,st2)); return 0;

Pergunta do programa 4 Entre com st1 = aaa e st2 = aaa. Responda: A diferença entre elas é:?? Entre com st1 = aaa e st2 = aba. Responda: A diferença entre elas é:?? Entre com st1 = aba e st2 = aaa. Responda: A diferença entre elas é:??

Lexicográfica A ordem lexicográfica a que nos referimos acima é análoga à ordem das palavras em um dicionário. Ela se baseia na ordenação dos caracteres estabelecida na tabela ISO8859-1*, da mesma forma que a ordem das palavras em um dicionário se baseia na ordenação usual das letras no alfabeto. Para comparar duas strings s e t, procura-se a primeira posição, digamos k, em que as duas strings diferem. Se s[k] vem antes de t[k] na tabela ISO então s é lexicograficamente menor que t. Se k não está definido então s e t são idênticas ou uma é prefixo próprio da outra; nesse caso, a string mais curta é lexicograficamente menor que a mais longa. *http://www.ime.usp.br/~pf/algoritmos/apend/iso-8859-1.html

função strcpy() A função strcpy() é usada para copiar o conteúdo de um string para outro. Ela tem dois argumentos: strcpy(s1, s2) copia o conteúdo do string s2 para o string s1.

função strcat() A função strcpy() é usada para concatenar o conteúdo de uma string para outro. Ela tem dois argumentos: strcat(s1, s2) concatena o conteúdo do string s2 para o string s1.

função strchr() Retorna um ponteiro para a localização em que o caractere 'ch' aparece na string pela primeira vez na string apontada por *str, ou NULL se não encontrar. Isto é, ela retorna o índice da primeira ocorrência de 'ch'

função strstr() Retorna um ponteiro que indica a primeira ocorrência da string 'substr' na string 'str'. Isto é, ela retorna o índice da primeira ocorrência de 'substr'

#include <stdio.h> #include <string.h> int main() { Programa 5 char st1[20], st2[20]; //Vetor de caracter printf("entre com uma palavra: "); scanf(" %s",st1); printf("entre com outra palavra: "); scanf(" %s",st2);

Programa 5 if (strcmp(st1,st2) == 0) } { printf("são iguais\n"); } else { printf("não são iguais\n"); } return 0;

Treinamento 1)Faça um programa que receba uma string e a retorne escrita de trás pra frente. 2)Faça um programa que leia uma string do teclado e diga se ela é palíndrome. Uma string é palíndrome quando pode ser lida tanto de trás pra frente quanto de frente para trás e possui exatamente a mesma seqüência de caracteres. Ex.: ASA, SUBI NO ONIBUS.

Treinamento 3)Faça um programa que conte quantas letras maiúsculas existem numa string recebida como parâmetro. 4)Faça um programa que conte quantas letras minúsculas existem numa string recebida como parâmetro. 5)Faça um programa que troque todas as letras maiúsculas por minúsculas e as minúsculas por maiúsculas de uma string recebida como parâmetro. 6)Faça um programa que receba 2 strings (A e B) e retorne uma terceira string (C) formada pelos caracteres de A e B intercalados. Ex.: Se A='Quarta' e B='Segunda', a resposta deve ser 'QSueagrutnada'.

Treinamento 7)Faça um programa que dadas as strings C e B do exercício anterior, retorne a string A. 8)Faça um programa que receba como entrada três strings (A, B e C) e retorne uma quarta string formada pela substituição de todas as ocorrências da string B pela string C dentro da string A. Ex.: Se A='Abra a porta para entrar para poder descansar calmamente', B='para' e C='e tente', a resposta deve ser: 'Abra a porta e tente entrar e tente descansar calmamente'. 9)Faça um programa que receba uma string A a ordene.

Treinamento 10)Faça um programa que leia uma string e um caracter. Localize esse caracter na string e troque-o por %. 11)Faça um programa que leia duas strings (A e B). B é uma substring de A. Diga em que posição da string ela ocorre. Exemplo: Jogando bola e ando, ela ocorre em 12) Crie um programa que duplique cada caractere da string.