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

Documentos relacionados
Strings. Adaptado de Deise Saccol

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

Modulo 7: Programação com funções predefinidas pela linguagem

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

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

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

Algoritmos e Programação

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

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

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

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

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

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 é:

Cadeias de Caracteres (Strings)

Disciplina de Algoritmos e Programação

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

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

CCO 016 Fundamentos de Programação

UNIVERSIDADE FEDERAL DO PAMPA CAMPUS BAGÉ ALGORITMOS E PROGRAMAÇÃO. Manipulação de strings. Prof. Alex Camargo

Seqüências de Caracteres

INTRODUÇÃO À PROGRAMAÇÃO

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

3. Linguagem de Programação C

Linguagem de Programação

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

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

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

Apêndice B. Cadeias de Caracteres (Strings)

SITUAÇÃO VETORES. Imagine o seguinte problema:

Computação Informática

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

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

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

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

Estruturas de Dados Aula 6: Cadeias de Caracteres

Tratamento de Caracteres

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

INF 1005 Programação I

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

Caracteres e Cadeias de Caracteres

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

Introdução à Linguagem C

Linguagem C Vetores, Matrizes e Strings

INF 1620 P2-14/10/05 Questão 1 Nome:

Métodos Computacionais. Strings (Vetor de Caracteres)

Programação de Computadores I Funções Básicas da Linguagem C PROFESSORA CINTIA CAETANO

Curso de Introdução à Liguagem de. Grupo PET-Tele. Universidade Federal Fluminense. July 16, 2012

ESTRUTURAS COMPOSTAS VETOR

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

Introdução à Programação C

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

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

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

Caracteres, Vetores e Matrizes

Fundamentos de Programação 1

Vetores(Arrays) Olimpíadas de Informática. Aulas preparatórias Introdução a Programação em C.

Estruturas de Dados. Profa. Juliana Pinheiro Campos

LINGUAGEM C: ARRAYS DE CARACTERES: STRINGS

Algoritmos e Programação

Módulo 7 Cadeias de Caracteres

Introdução à Programação. Strings

INF 1620 P1-17/09/05 Questão 1 Nome:

INF 1620 P1-18/09/04 Questão 1 Nome:

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

Programação de Computadores II

Linguagem C. André Tavares da Silva.

Algoritmos e Programação

Tabela ASCII de caracteres de controle

Char e Strings de Caracteres

Sistemas Operacionais e Introdução à Programação. Programação com linguagem C

Char e Strings de Caracteres

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: variáveis compostas homogêneas: Arrays Strings

INF 1620 P1-14/04/07 Questão 1 Nome:

ESTRUTURAS COMPOSTAS

Estruturas de Repetição na Linguagem C. Slides da Prof. Deise Saccol

Computação eletrônica:

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

ESTRUTURAS COMPOSTAS VETOR

Métodos Computacionais em Física

Olimpíadas de Informática Aulas preparatórias Introdução a Programação em C.

MAC2166 Introdução à Computação para Engenharia Escola Politécnica Terceira Prova 20 de junho de 2011

LISTA DE EXERCÍCIOS MÊS 03

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

USP - ICMC - SSC SSC o. Semestre Disciplina de Introdução à Computação para Engenharia Ambiental

MC-102 Aula 11 Strings

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

USP - ICMC - SSC SSC o. Semestre Disciplina de Introdução à Computação para Engenharia Ambiental

Introdução a Programação na Linguagem C.

prim = A ; prim = &A[0];

Comandos de entrada. e saída. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada.

Introdução a C. Para saber quais os procedimento ou funções que existem em cada biblioteca, acesse

Prof. Rogério Albuquerque de Almeida. Programação Orientada a Objetos II Java Sexta aula

Estrutura de Seleção Múltipla Switch

Aula 06 Introdução à Programação Matrizes

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

1ª Lista de Exercícios

Programação: Vetores

#include <stdio.h> Void main() { printf( Cheguei!\n"); } INTRODUÇÃO A LINGUAGEM C

Introdução à Programação

Transcrição:

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

Strings Não existe um tipo String em C. Strings em C são vetores do tipo char que terminam com \0. Para literais string, o próprio compilador coloca \0. main(){ char re[8] = "lagarto"; //tamanho máximo de 7 caracteres printf ("%s", re); 2

Para ler uma String Comando gets main(){ char re [80]; printf ("Digite o seu nome: "); gets(re); printf ("Oi %s\n", re); 3

Tratamento de strings #include <string.h> Principais funções para manipulação de strings: strcmp (s1, s2): comparação de strings strlen(s1): devolve o tamanho da string strcpy(para, de): copia string strcat(str1,str2): concatena duas strings strupr(str): coloca str em letras maiúsculas strlwr(str): coloca str em letras minúsculas 4

Para comparar duas strings strcmp (s1, s2); retorna 0 se as duas strings são iguais, um valor <0 se s1 for menor que s2 (ordem alfabética) e >0 se s1 for maior que s2 (diferencia maiúsculas de minúsculas) #include <string.h> main( ){ char re[80]; printf ("Digite a senha: "); scanf ("%s", &re); if (strcmp(re,"laranja")==0) { printf ("Senha correta\n"); else { printf ("Senha invalida\n"); Pode utilizar scanf no lugar do gets, só que o scanf não lê espaços em branco. Se o usuário digitar: > Alexandre Costa e Silva o scanf vai pegar apenas Alexandre. O gets pega tudo. 5

Para saber o tamanho de uma string int size = strlen(str); Retorna um valor inteiro com o número de caracteres da string (desprezando o \0 ). #include <string.h> main(){ char re[80]; printf ("Digite a palavra: "); scanf ("%s", &re); // gets(re); int size=strlen(re); printf ("Esta palavra tem %d caracteres.\n", size); 6

Para copiar o conteúdo de uma string para outra strcpy(str1, str2); copia o conteúdo de str2 para str1 (str1 não deve ser menor que str2) #include <string.h> main() { char str[80]; strcpy (str, "Alo"); printf ("%s\n", str); 7

Para concatenar duas strings strcat(str1,str2): Esta função é utilizada para concatenar (unir / juntar) duas strings. str2 será adicionada no final de str1 #include<string.h> int main(){ char str1[40],str2[10],str3[40]="teste"; strcpy(str1,"inicio"); strcpy(str2,"fim"); strcat(str1,str2); strcat(str3,str1); printf("%s\n",str1); printf("%s\n",str3); 8

Exemplo do uso das funções #include <string.h> main(){ char palavra[30], palavra2[30], teste[30]; int tam, comp; printf ("\n Informe uma string: "); gets (palavra); printf ("A palavra digitada eh %s\n", palavra); printf ("\n Informe uma segunda string: "); gets (palavra2); printf ("A palavra digitada eh %s\n", palavra2); strcpy (teste,"aula teste"); printf ("A palavra copiada eh %s\n", teste); strcat (teste, " 1"); printf ("A palavra concatenada eh %s\n", teste); tam=strlen(palavra); printf ("\no tamanho da primeira string eh %d", tam); comp=strcmp (palavra, palavra2); if (comp==0) printf ("\nsao iguais: %d", comp); else printf ("\nsao diferentes: %d", comp); printf ("\nmaiusculo: %s", strupr(palavra)); printf ("\nminusculo: %s\n", strlwr(palavra)); 9

Exercício Escreva um programa que leia duas strings e as coloque na tela. Imprima também a segunda letra de cada string. 10

Exemplo de solução 1. Escreva um programa que leia duas strings e as coloque na tela. Imprima também a segunda letra de cada string. #include <string.h> main(){ char palavra[30]; printf ("\n Informe uma string: "); gets (palavra); printf ("A palavra digitada eh %s\n", palavra); printf ("\na segunda letra da string digitada eh %c", palavra[1]); printf ("\n Informe uma segunda string: "); gets (palavra); printf ("A palavra digitada eh %s\n", palavra); printf ("\na segunda letra da string digitada eh %c\n", palavra[1]); 11

Exercício Escreva um programa que leia uma string, conte quantos caracteres desta string são iguais a 'a' e substitua os que forem iguais a 'a' por 'b'. O programa deve imprimir o número de caracteres modificados e a string modificada. 12

Exemplo de solução 2. Escreva um programa que leia uma string, conte quantos caracteres desta string são iguais a 'a' e substitua os que forem iguais a 'a' por 'b'. O programa deve imprimir o número de caracteres modificados e a string modificada. #include <string.h> main(){ char string[30]; int tamanho, i, contaa=0; printf ("\ninforme uma string: "); gets (string); tamanho=strlen(string); for (i=0;i<tamanho;i++) { if (string[i]=='a') { contaa=contaa+1; string[i]='b'; printf ("\no numero de caracteres modificados eh %d", contaa); printf ("\na string modificada eh %s\n", string); 13

Exercício Faca um programa que leia o nome de 5 pessoas e mostre os nomes armazenados. Utilize vetores. 14

Exemplo de solução 3. Faca um programa que leia o nome de 5 pessoas e mostre os nomes armazenados. Utilize vetores. #include <string.h> main(){ char nomes[5][10]; int cont; for (cont=0;cont<5;cont++) { printf ("\ninforme o nome %d: ", cont); gets(nomes[cont]); for (cont=0;cont<5;cont++) printf ("\no nome armazenado na posicao %d eh %s", cont, nomes[cont]); 15

Exercícios 4. Uma empresa concederá um aumento de salário aos seus funcionários, variável de acordo com o cargo, conforme a tabela abaixo. Faça um programa que leia o salário e o cargo de um funcionário e calcule o novo salário. Se o cargo do funcionário não estiver na tabela, ele deverá então receber 40% de aumento. Mostre o salário antigo, o novo salário e a diferença. Cargo Percentual Gerente 10% Engenheiro 20% Técnico 30% 16

#include <string.h> main(){ char cargo[20]; float salario, novosalario; printf ("\ndigite o cargo: "); scanf ("%s", cargo); printf ("\ndigite o salario: "); scanf ("%f", &salario); if (strcmp(cargo, "gerente")==0) novosalario=salario*1.1; else if (strcmp(cargo, "engenheiro")==0) novosalario=salario*1.2; else if (strcmp(cargo, "tecnico")==0) novosalario=salario*1.3; else novosalario=salario*1.4; printf ("\no salario antigo eh %.2f, o salario novo eh %.2f e a diferenca eh de R$ %.2f\n", salario, novosalario, novosalario-salario); 17