SlideShare uma empresa Scribd logo
STRINGS
Profª Ms. Engª Elaine Cecília Gatto
Curso de Bacharelado em Engenharia de Computação
Universidade do Sagrado CoraçãO – USC
Bauru/SP
STRINGS
• São sequências, conjuntos ou cadeira de caracteres diversos,
sendo representados por aspas;
• Em C não existe um tipo STRING explícito;
• Não é um tipo primitivo da linguagem;
• Não existe uma palavra reservada que declare uma variável do
tipo STRING (como acontece em pascal, java, etc);
• Em C utiliza-se um vetor ou matriz do tipo CHAR para
armazenar uma STRING;
• Mas qual o tamanho da STRING? Quando ela termina?
• Utilizar um caracter terminador: 0 (null = zero)  forma que
as funções reconhecem o fim da string;
STRINGS
• Caracteres são blocos de montagem fundamentais dos
programas-fonte
• Cada programa é composto por uma sequencia de caracteres
que, ao serem agrupados de modo significativo, são
interpretados pelo computador como uma série de instruções
que serão usadas na realização de tarefa
• CONSTANTE DE CARACTER: é um valor INT representado por
um caracter entre aspas simples

• CONJUNTO DE CARACTERES DA MÁQUINA: exemplo o código
ASCII
STRINGS
• STRING: consistem em uma série de caracteres tratados como
uma únic entidade
• CARACTERES ESPECIAIS: acentos, pontuação, etc
• STRINGS LITERAIS ou CONSTANTES STRINGS: são escritas entre
aspas duplas, exemplo:
• “João da Silva”
• “14-2107-7000”
STRINGS
• É um array de caracteres que termina no caractere ‘0’
• O valor de uma STRING é o endereço de seu primeiro
caractere
• STRINGs são acessadas por meio de um ponteiro para o
primeiro caractere da STRING
• char cor[] = “azul”;
• const char *corPtr = “azul”;
• char cor[] = {‘a’, ‘z’, ‘u’, ‘l’, ‘0’}
Strings Constantes
• Sempre que o compilador encontra qualquer coisa entre aspas
duplas, ele reconhece que se trata de uma string constante.
printf( “ %s ”, “ Saudações ”);

Posição da memória

string

1092

S

1093

A

1094

U

1095

D

1096

A

1096

C

1097

O

1098

E

1099

S

1100

0
SCANF( )
• É uma função da biblioteca padrão de entrada/saída
• A função SCANF() lerá caracteres até que se encontre:
• Espaço
• Tabulação
• Nova linha
• Indicador de fim de arquivo
• Use %s de modo que scanf leia a quantidade de caracteres
exatos que você deseja. Exemplo:
char word[20];
scanf( “ %19s ”, word);
SCANF( )
#include <stdio.h>
#include <stdlib.h>
int main(){
char nome[100];
printf("Digite o seu nome: ");
scanf("%s", nome);
printf("Saudacoes, %s", nome);
printf("n ");
system("PAUSE");
return 0;
}

• Observe a saída do
programa! Consegue
notar o que há de
diferente
entre
a
entrada de dados e a
saída?
SCANF( )
#include <stdio.h>
#include <stdlib.h>
int main(){
char nome[100];
printf("Digite o seu nome: ");
scanf("%s", nome);
printf("Saudacoes, %s", nome);
printf("n ");
system("PAUSE");
return 0;
}

• Esta instrução lê cada caractere digitado
e os armazena a partir do endereço
nome.
• O processo termina quando um
caractere branco é encontrado.
• Nesse ponto é incluído automaticamente
o caractere 0 na próxima posição livre.
• Não é permitido ultrapassar o limite
estipulado na criação do vetor/matriz.
• O espaço para 0 deve ser previsto.
• A função scanf() entende um espaço em
branco como o término da entrada.
• Por isso, na saída, apenas o primeiro
nome digitado é apresentado.
SCANF( )
#include <stdio.h>
#include <stdlib.h>
int main(){
char nome[100];
printf("Digite o seu nome: ");
scanf("%s", nome);
printf("Saudacoes, %s", nome);
printf("n ");
system("PAUSE");
return 0;
}

• Mas se digitarmos o nome inteiro sem
espaços, observe a saída!
• Observe esta instrução novamente.
Porque está sendo usado nome e não
&nome?
• Neste caso, nome é equivalente a
&nome[0]
• O nome de uma matriz é o seu endereço
inicial
• Scanf() é muito utilizada para ler uma
mistura de tipos de dados numa mesma
instrução.
SSCANF( )
INT SSCANF ( CHAR *S, CONST CHAR * FORMAT, ...);
•
•
•
•

Equivalente a scanf
A entrada é lida a partir do array S em vez do teclado
Retorna o número de caracteres escritos em S
Retorna EOF (END-OF-FILE) se ocorrer um erro

• É uma função da biblioteca padrão de
entrada/saída
• EXEMPLO, LIVRO DEITEL, 8.16
GETS( )
• char *gets (char *s);
• Pede ao usuario que entre uma string, que sera armazenada
na string s.
• O ponteiro que a funcao retorna é o proprio s.
• gets nao é uma funcao segura.
• Por que?
• Porque com gets pode ocorrer um estouro da quantidade de
posicoes que foi especificada na string.
• É uma função da biblioteca padrão de entrada/saída
GETS( )
#include <stdio.h>
#include <stdlib.h>
int main(){
char nome[100];
printf("Digite o seu nome: ");
gets(nome);
printf("Saudacoes, %s", nome);
printf("n ");
system("PAUSE");
return 0;
}

• Usada para leitura de
textos ;
• Propósito: ler unicamente
uma cadeia de caracteres
do teclado enquano a tecla
ENTER não for pressionada;
• Todos
os
caracteres
digitados
são
armazenados,
inclusive
espaços e tabulações;
• O caractere 0 é incluído
no final;
GETS( )
#include <stdio.h>
#include <stdlib.h>
int main(){
char nome[100];
printf("Digite o seu nome: ");
gets(nome);
printf("Saudacoes, %s", nome);
printf("n ");
system("PAUSE");
return 0;
}

• Problemas
com
esta
função: pode armazenar
caracteres
além
da
capacidade definida;
GETS( )
#include <stdio.h>
#include <stdlib.h>
int main(){
char nome[10];
printf("Exemplo de estouro de string. n");
printf("Digite o seu nome: ");
gets(nome);
printf("Saudacoes, %s", nome);
printf("n ");
system("PAUSE");
return 0;
}

• Neste exemplo, é declarado
um vetor de tamanho 10, mas
o nome digitado contém 20
caracteres. Observe que o
vetor armazena 10 caracters a
mais do que foi especificado.
• Para resolver este problema,
deve-se usar FGETS()
GETCHAR( )
• INT GETCHAR (VOID)

• É uma função da biblioteca padrão de entrada/saída
• Insere o caractere seguinte da entrada-padrão e o retorna
como um inteiro
• A função getchar() lê um caracter e retorna um inteiro que
é:
• o código do caracter, ou
• o valor -1 que corresponde a fim de ficheiro
GETCHAR( )
/* Exemplo da utilização de getchar */
#include <stdio.h>
int main()
{
char caracter;
printf("n");
fflush(stdout);
printf("Utilizando getchar()n");
fflush(stdout);
printf("--------------------n");
fflush(stdout);
printf("n");
fflush(stdout);
printf("Entre com um caracter :");
fflush(stdout);
caracter = getchar();
printf("n Você digitou o caracter %c n n", caracter);
fflush(stdout);
return(0);
}
GETCHAR( )
#include<stdio.h>
main() {
int c;
int i=0;
while((c = getchar()) != -1)
if (c == 'a') i++;
printf("Foram lidos %d a's",i);
}
FGETS( )
• CHAR *FGETS ( CHAR *S, INT N, FILE *STREAM)
• Insere caracteres de fluxo especificado para o array S até
que:
• um caractere de newline seja lido, ou
• fim de arquivo seja encontrado, ou
• até que n-1 bytes sejam lidos
• Um caractere nulo de finalização é anexado ao array
• Retorna a string que foi lida em S
• É uma função da biblioteca padrão de entrada/saída
FGETS( )
#include <stdio.h>
#include <stdlib.h>
int main(){
char nome[15];
printf("Digite o seu nome: ");
fgets(nome, 15, stdin);
printf("Saudacoes, %s", nome);
printf("n ");
system("PAUSE");
return 0;
}

• O código ao lado utiliza fgets.
O vetor declarado tem 15
posições e somente essas 15
posições são preenchidas.
• Na saída, observa-se que o
nome digitado é maior que as
15 posições, e portanto, o
restante
do
nome
é
desprezado.
• STDIN: fluxo
padrão

de

entrada-
PUTS( )
• INT PUTS ( CONST CHAR *S )
• Imprime a string S seguida por um caractere de newline
• Retorna um inteiro diferente de zero se for bem sucedida
• Retorna um EOF se ocorrer um erro
• É uma função da biblioteca padrão de entrada/saída
PUTS( )
#include <stdio.h>
#include <stdlib.h>
int main(){
char nome[80];
printf("Digite o seu nome: ");
gets(nome);
puts("");
puts("Saudacoes, ");
puts(nome);
puts("");
puts("Imprimindo a partir da quarta posicao: ");
puts(&nome[4]);
puts("");
puts("a funcao puts() pula linha automaticamente!");
puts("");
system("PAUSE");
return 0;
}

• É o complemento da função
gets();
• Propósito: imprimir uma
única string por vez;
• O endereço da string deve ser
enviado para puts como
argumento;
PUTCHAR( )
• INT PUTCHAR ( INT C );
• Imprime o caracter armazenado em C e o retorna como um
inteiro
• É uma função da biblioteca padrão de entrada/saída
SPRINTF( )
• INT SPRINTF ( CHAR *S, CONST CHAR *FORMAT, ... );
•
•
•
•

Equivalente a printf
A saída é armazenada no array S em vez de impressa na tela
Retorna o número de caracteres escritos em S
Retorna EOF se ocorrer um erro

• É uma função da biblioteca padrão de entrada/saída

• EXEMPLO, LIVRO DEITEL, 8.15
SPRINTF( )
#include <stdio.h>
int main()
{
int i;
char string1[20];
printf( " Entre um valor inteiro: ");
fflush(stdout);
scanf("%d", &i);
sprintf(string1, "Valor de i = %d", i);
puts(string1);
return 0;
}
FGETS( ) E PUTCHAR( )
#include <stdio.h>
void reverse(const char * const sPtr);

int main(){
char sentenca[80];
printf(" Digite uma linha de texto: n ");
fflush(stdout);
fgets(sentenca, 80, stdin);
printf(" n A linha impressa na ordem inversa é: n ");
fflush(stdout);
reverse(sentenca);
system("PAUSE");
return 0;
}
void reverse(const char * const sPtr){
if(sPtr[0] == '0'){
return;
}
else{
reverse(&sPtr[1]); //recursão
putchar(sPtr[0]); //exibe o caractere
}
}
GETCHAR( ) e PUTS( )
• EXEMPLO, LIVRO DEITEL, 8.14
Inicializando strings
char nome[] = {‘E’, ‘l’, ‘a’, ‘i’, ‘n’, ‘e’, ‘0’};
char nome[] = “Elaine”;
EXEMPLO:
#include <stdio.h>
#include <stdlib.h>
int main(){
char saudacao[]="Saudacoes, ";
char nome[80];
printf(" Digite o seu nome: ");
gets(nome);
printf("%s%s n", saudacao, nome);
system("PAUSE");
return 0;
}
STRCPY( )
• CHAR *STRCPY ( CHAR *S1, CONST CHAR *S2 );
• Copia a string s2 no array s1
• O valor de s1 é retornado
• É uma função de manipulação de strings
STRCPY( )
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(){
char nome_original[30] ;
char nome_copia[30];
printf(" Digite um nome: ");
gets(nome_original);
strcpy(nome_copia, nome_original);
printf(" Nome original: ");
puts(nome_original);
printf(" Nome copia: ");
puts(nome_copia);
system("PAUSE");
return 0;
}

• Copia ou atribui o conteúdo da
string de origem para a string de
destino. Ambas devem ter, no
mínimo, o mesmo tamanho;
• Sintaxe: strcpy(string_destino,
string_origem);
STRCAT( )
• CHAR *STRCAT ( CHAR *S1, CONST CHAR *S2 );
• Acrescenta a string s2 ao array s1
• O primeiro caractere de s2 sobrescreve o caractere
nulo de finalização de s1
• O valor de s1 é retornado
• É uma função de manipulação de strings
STRCAT( )
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(){
char cadeia1[100];
char cadeia2[10];
printf(" Digite o seu primeiro nome: ");
gets(cadeia1);
printf(" Digite o seu segundo nome: ");
gets(cadeia2);
strcat(cadeia1, cadeia2);
printf("%s", cadeia1);
puts("");
system("PAUSE");
return 0;
}

• Concatena o conteúdo da string
de origem ao final do conteúdo
da string de destino.
• Essa função não verifica se a
primeira cadeia tem espaço
suficiente para que a segunda
cadeia seja adicionada ao seu
final.
• Sintaxe:
strcat(string_destino,
string origem);
STRNCPY( )
• Char *strncpy ( char *s1, const char *s2, size_t n )
• Copia no maximo n caracteres da string2 no array s1
• O valor de s1 é retornado
• É uma função de comparação de strings
STRCPY e STRNCPY
//exemplo STRCPY E STRNCPY
#include <stdio.h>
#include <string.h>
int main(void){
char x[] = "Parabéns a você";
char y[25];
char z[15];
printf(" %s %s n %s %s n",
"A string no array x é: ", x,
"A string no arryz y é: ", y,
strcpy(y,x));
fflush(stdout);
strncpy(z, x, 14);
z[14] = '0';
printf(" A string no array z é: %s", z);
fflush(stdout);
return 0;
}
STRNCAT( )
• Char *STRNCAT ( char *s1, const char *s2, size_t n )
• Acrescenta no máximo n caracteres da string s2 ao
array s1.

• O primeiro caractere de s2 sobrescreve o caractere
nulo de finalização de s1
• O valor de s1 é retornado
• É uma função de comparação de strings
STRCMP( )
• INT STRCMP ( CONST CHAR *S1, CONST CHAR *S2 );
• Compara a string s1 com a string s2
• A função retorna 0, menor do que 0 ou maior do que 0
se s1 for igual, menor ou maior do que s2,
respectivamente
• É uma função de comparação de strings
Função STRCMP( )
• Compara o conteúdo da string 1 com o conteúdo da
string 2;
• Retorna um número inteiro;
• Se forem iguais, a função retorna zero;
• Se o número retornado for menor que zero, então a
string1 é menor que a string 2;
• Se o número retornado for maior que zero, então a
string1 é maior que a string2;
STRNCMP( )
• INT STRNCMP ( CONST CHAR *S1, CONST CHAR *S2,
SIZE_T N );
• Compara até n caracteres da string s1 com a string s2

• A função retorna 0, o menor do que 0 ou maior do que
0 se s1 for igual, menor ou maior do que s2,
respectivamente
• É uma função de comparação de strings
STRCMP( )
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(){
char string1[20], string2[20];
int resultado;
printf(" Digite uma palavra: ");
gets(string1);
printf(" Digite uma palavra: ");
gets(string2);
resultado = strcmp(string1, string2);
if(resultado ==0 ){
puts("As strings sao iguais.");
}
else{
puts("As strings sao diferentes.");
}
system("PAUSE");
return 0;
}
Função STRCMP( )
STRLEN( )
• SIZE_T STRLEN ( CONST CHAR *S );
• Determina o comprimento da string S
• O número de caracteres anteriores ao caractere nulo
de finalização é retornado
Função STRLEN( )
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(){
char string1[20], string2[20];
int tamanho1, tamanho2;
printf(" Digite uma palavra: ");
gets(string1);
printf(" Digite uma palavra: ");
gets(string2);
tamanho1 = strlen(string1);
tamanho2 = strlen(string2);
printf("O tamanho da string1 e: %d", tamanho1);
puts("");
printf("O tamanho da string2 e: %d", tamanho2);
puts("");
system("PAUSE");
return 0;
}

• Recebe
•
•

como argumento o
endereço de uma string e
retorna o seu tamanho;
O
comprimento
do
vetor/matriz da string deve
ser um a mais que o inteiro
retornado por strlen();
O terminador 0 não é
contabilizado;
Função STRUPR( )
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(){
char string[20];
printf(" n Escreva uma palavra: ");
gets(string);
printf(" n String original: %s", string);
strupr(string);
printf(" n String convertida: %s", string);
printf("nn");
system("pause");
return 0;
}

• Converte o conteúdo da string
em letras maiusculas
Função STRLWR( )
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(){
char string[20];
printf(" n Escreva uma palavra com todas
as letras em maiusculo: ");
gets(string);
printf(" n String original: %s", string);
strupr(string);
printf(" n String convertida: %s", string);
printf("nn");
system("pause");
return 0;
}

• Converte o conteúdo da string
em letras minusculas
Conversão de Strings
• Biblioteca de utilitários gerais: stdlib.h
• Convertem strings de digitos em valores inteiros e de ponto
flutuante
Double atof ( const char *nPtr );

Converte a string NPTR em double

Int atoi ( const char *nPtr );

Converte a string NPTR em int

Long atol (const char *nPtr );

Converte a string NPTR em long
int

Double strtod ( const char *nPtr, char **endPtr );

Converte a string NPTR em double
(**  ponteiro de uma string)

Long strtol ( const char *nPtr, char **endPtr, int
base );

Converte a string NPTR em long

Unsigned long strtoul ( const char *nPtr, char
**endPtr, int base );

Convertea a string NPTR em
unsigned long
Conversão de Strings
• EXEMPLOS, LIVRO DO DEITEL
STRCHR( )
• CHAR *STRCHR ( CONST CHAR *S, INT C );
• Localiza a primeira ocorrência do caractere C na string
S
• Se C for encontrado, um ponteiro para C em S é
retornado
• Caso contrário, um ponteiro NULL é retornado
• É uma função de pesquisa
• EXEMPLO 8.23, LIVRO DEITEL
STRCSPN( )
SIZE_T STRCSPN ( CONST CHAR *S1, CONST CHAR *S2 );
• Determina e retorna o tamanho do segmento incial da
string s1 que consiste apenas em caracteres contidos
na string s2
• Exemplo 8.24, livro do deitel
• É uma função de pesquisa
STRSPN( )
• SIZE_T STRSPN ( CONST CHAR *S1, CONST CHAR *S2 );
• Determina e retorna o tamanho do segmento inicial da
string s1 que consiste em caracteres não contidos na
string s2
• Exemplo 8.27, livro deitel
• É uma função de pesquisa
STRPBRK( )
CHAR *STRPBRK ( CONST CHAR *S1, CONST CHAR *S2 );
• Localiza a primeira ocorrência na string s1 de qualquer
caractere na string s2
• Se um caractere da string s2 for encontrado, um
ponteiro para o caractere na string s1 é retornado
• Caso contário, um ponteiro NULL é retornado
• É uma função de pesquisa
• Exemplo 8.25, livro deitel
STRRCHR( )
• Char *strrchr ( const char *s, int c );
• Localiza a última ocorrência de C na string S
• Se C for encontrado, um ponteiro para C na string S é
retornado
• Caso contrário, um ponteiro NULL é retornado
• É uma função de pesquisa
• Exemplo 8.26, livro do deitel
STRSTR( )
• CHAR *STRSTR ( CONST CHAR *S1, CONST CHAR *S2 );
• Localiza a primeira ocorrência na string S1 da string S2
• Se a string for encontrada, um ponteiro para a string
em S1 é retornado
• Caso contrário, um ponteiro NULL é retornado
• É uma função de pesquisa
• Exemplo 8.28, livro do deitel
STRTOK( )
• CHAR *STRTOK ( CHAR *S1, CONST CHAR *S2);
• Uma sequencia de chamadas para STRTOK separa a string s1 em
tokens separados por caracteres contidos na string s2
• TOKENS: partes lógicas. Exemplo: palavras em uma linha de texto
• A primeira chamada contém S1 como primeiro argumento, e para
que as chamadas seguintes continuem a separar tokens na mesma
string, elas deverão conter NULL como primeiro argumento
• Um ponteiro para o token em vigor é retornado por cada chamada.
• Se não houve mais tokens quando a função for chamada, NULL será
retornado
• É uma função de pesquisa
• exemplo 8.29, livro deitel
Exercícios
1. Desenvolver um programa que obtenha as seguintes
informações para os “n” colegas da sua turma de
Programação de Computadores:
variavel

qtde caracteres

nome

15

sobrenome

30

endereço

80

telefone

10

idade

3

• Realize as seguintes tarefas:
• Copie o nome do seu colega para uma variável denominada
nome2;
• Concatene o sobrenome à variável nome2;
Exercícios
• Obtenha o tamanho da variável nome2;
• Imprima todas as informações de cada um dos seus colegas na
tela;
2. Faça um programa em C que leia 10 strings, imprima o
tamanho de cada uma delas e troque as letras para
maiusculas. Dica: use o FOR.
3. Troque as letras do exercício anterior, por minusculas.
4. Escreva um programa em C que receba o nome, a idade e o
sexo de 10 pessoas e armazene, em um vetor/matriz, as
pessoas que forem do sexo masculino e maiores de 18 anos.
Exercícios
5. Escreva um programa que faça a seguinte pergunta ao
usuário: “Quem é o criador da Linguagem C?”. O usuário
deve escrever a resposta e o programa deve verificar:
• Se o usuário responder corretamente, uma mensagem de
“parabéns, voce acertou!”, deve ser emitida;
• Se o usuário responder incorretamente, uma mensagem de
“que pena, voce errou!”, deve ser emitida.

Mais conteúdo relacionado

Mais procurados

Introdução a linguagem C# (CSharp)
Introdução a linguagem C# (CSharp)Introdução a linguagem C# (CSharp)
Introdução a linguagem C# (CSharp)
Marcos Castro
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programação
rodfernandes
 
Exercicios resolvidos visuAlg
Exercicios resolvidos visuAlgExercicios resolvidos visuAlg
Exercicios resolvidos visuAlg
Willians Miyabara
 
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
Leinylson Fontinele
 
Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)
Gercélia Ramos
 
Linguagem C - Vetores
Linguagem C - VetoresLinguagem C - Vetores
Linguagem C - Vetores
Elaine Cecília Gatto
 
Lista de exercícios resolvidos
Lista de exercícios resolvidosLista de exercícios resolvidos
Lista de exercícios resolvidos
Crishna Irion
 
Linguagem Assembly
Linguagem AssemblyLinguagem Assembly
Linguagem Assembly
Suzana Viana Mota
 
Linguagem C 10 Arquivos
Linguagem C 10 ArquivosLinguagem C 10 Arquivos
Linguagem C 10 Arquivos
Regis Magalhães
 
Python - Introdução
Python - IntroduçãoPython - Introdução
Python - Introdução
fabiocerqueira
 
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Leinylson Fontinele
 
Hardware e software conceitos
Hardware e software conceitosHardware e software conceitos
Hardware e software conceitos
Danilo Vilanova
 
Visualg
VisualgVisualg
Visualg
Pedro Silva
 
Programando com Python
Programando com PythonProgramando com Python
Programando com Python
Diemesleno Souza Carvalho
 
Apresentação Scratch
Apresentação ScratchApresentação Scratch
Apresentação Scratch
Michele Felkl
 
Estrutura de Dados - Aula 02 - Estrutura de Dados e TAD
Estrutura de Dados - Aula 02 - Estrutura de Dados e TADEstrutura de Dados - Aula 02 - Estrutura de Dados e TAD
Estrutura de Dados - Aula 02 - Estrutura de Dados e TAD
Leinylson Fontinele
 
Linguagem C 07 Registros
Linguagem C 07 RegistrosLinguagem C 07 Registros
Linguagem C 07 Registros
Regis Magalhães
 
Alguns algoritmos resolvidos
Alguns algoritmos resolvidosAlguns algoritmos resolvidos
Alguns algoritmos resolvidos
jaoozinhoqi123
 
Estrutura de Dados - PILHAS
Estrutura de Dados - PILHASEstrutura de Dados - PILHAS
Estrutura de Dados - PILHAS
Aparicio Junior
 
POO - 17 - Interfaces
POO - 17 - InterfacesPOO - 17 - Interfaces
POO - 17 - Interfaces
Ludimila Monjardim Casagrande
 

Mais procurados (20)

Introdução a linguagem C# (CSharp)
Introdução a linguagem C# (CSharp)Introdução a linguagem C# (CSharp)
Introdução a linguagem C# (CSharp)
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programação
 
Exercicios resolvidos visuAlg
Exercicios resolvidos visuAlgExercicios resolvidos visuAlg
Exercicios resolvidos visuAlg
 
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
 
Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)
 
Linguagem C - Vetores
Linguagem C - VetoresLinguagem C - Vetores
Linguagem C - Vetores
 
Lista de exercícios resolvidos
Lista de exercícios resolvidosLista de exercícios resolvidos
Lista de exercícios resolvidos
 
Linguagem Assembly
Linguagem AssemblyLinguagem Assembly
Linguagem Assembly
 
Linguagem C 10 Arquivos
Linguagem C 10 ArquivosLinguagem C 10 Arquivos
Linguagem C 10 Arquivos
 
Python - Introdução
Python - IntroduçãoPython - Introdução
Python - Introdução
 
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
 
Hardware e software conceitos
Hardware e software conceitosHardware e software conceitos
Hardware e software conceitos
 
Visualg
VisualgVisualg
Visualg
 
Programando com Python
Programando com PythonProgramando com Python
Programando com Python
 
Apresentação Scratch
Apresentação ScratchApresentação Scratch
Apresentação Scratch
 
Estrutura de Dados - Aula 02 - Estrutura de Dados e TAD
Estrutura de Dados - Aula 02 - Estrutura de Dados e TADEstrutura de Dados - Aula 02 - Estrutura de Dados e TAD
Estrutura de Dados - Aula 02 - Estrutura de Dados e TAD
 
Linguagem C 07 Registros
Linguagem C 07 RegistrosLinguagem C 07 Registros
Linguagem C 07 Registros
 
Alguns algoritmos resolvidos
Alguns algoritmos resolvidosAlguns algoritmos resolvidos
Alguns algoritmos resolvidos
 
Estrutura de Dados - PILHAS
Estrutura de Dados - PILHASEstrutura de Dados - PILHAS
Estrutura de Dados - PILHAS
 
POO - 17 - Interfaces
POO - 17 - InterfacesPOO - 17 - Interfaces
POO - 17 - Interfaces
 

Destaque

Fundamentos da programação de computadores 2ª edição
Fundamentos da programação de computadores   2ª ediçãoFundamentos da programação de computadores   2ª edição
Fundamentos da programação de computadores 2ª edição
Leandro Rocha de Oliveira
 
Aula 5 aed - matrizes
Aula 5   aed - matrizesAula 5   aed - matrizes
Aula 5 aed - matrizes
Elaine Cecília Gatto
 
Livro Linguagem C - Completo
Livro Linguagem C - CompletoLivro Linguagem C - Completo
Livro Linguagem C - Completo
Marcos Quinho
 
Introdução a estrutura de dados josé lucas rangel - raulzinho.cb@hotmail.com
Introdução a estrutura de dados   josé lucas rangel - raulzinho.cb@hotmail.comIntrodução a estrutura de dados   josé lucas rangel - raulzinho.cb@hotmail.com
Introdução a estrutura de dados josé lucas rangel - raulzinho.cb@hotmail.com
Raul Batalha
 
Algoritmos e Programação: Matrizes
Algoritmos e Programação: MatrizesAlgoritmos e Programação: Matrizes
Algoritmos e Programação: Matrizes
Alex Camargo
 
Introdução à linguagem c
Introdução à linguagem cIntrodução à linguagem c
Introdução à linguagem c
Rafael_Lima87
 
Linguagem C 05 Vetores E Matrizes
Linguagem C 05 Vetores E MatrizesLinguagem C 05 Vetores E Matrizes
Linguagem C 05 Vetores E Matrizes
Regis Magalhães
 
Linguagem C 03 Estruturas De Decisao
Linguagem C 03 Estruturas De DecisaoLinguagem C 03 Estruturas De Decisao
Linguagem C 03 Estruturas De Decisao
Regis Magalhães
 
Estrutura de decisão switch case
Estrutura de decisão switch caseEstrutura de decisão switch case
Estrutura de decisão switch case
Alessandra Sra JM
 
Fundamentos da programação de computadores 1ª edição
Fundamentos da programação de computadores   1ª ediçãoFundamentos da programação de computadores   1ª edição
Fundamentos da programação de computadores 1ª edição
Leandro Rocha de Oliveira
 
Aula 3 algoritmos
Aula 3   algoritmosAula 3   algoritmos
Aula 3 algoritmos
Patrick_turma10
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHP
Rangel Javier
 
Glosario de qbasic liliana
Glosario de qbasic lilianaGlosario de qbasic liliana
Glosario de qbasic liliana
khjhjhjh
 
PROGRAMAS QBASIC
PROGRAMAS QBASICPROGRAMAS QBASIC
PROGRAMAS QBASIC
Jaime Zapata
 
Recursividade
RecursividadeRecursividade
Recursividade
Pablo Silva
 
Funções em C
Funções em CFunções em C
Funções em C
Pablo Silva
 
Análise assintótica
Análise assintóticaAnálise assintótica
Análise assintótica
Pablo Silva
 
C# .NET - Um overview da linguagem
C# .NET - Um overview da linguagem C# .NET - Um overview da linguagem
C# .NET - Um overview da linguagem
Claudson Oliveira
 
CakePHP com sotaque brasileiro
CakePHP com sotaque brasileiroCakePHP com sotaque brasileiro
CakePHP com sotaque brasileiro
Juan Basso
 
Assembly para pc-25paginas
Assembly para pc-25paginasAssembly para pc-25paginas
Assembly para pc-25paginas
MikeNandes
 

Destaque (20)

Fundamentos da programação de computadores 2ª edição
Fundamentos da programação de computadores   2ª ediçãoFundamentos da programação de computadores   2ª edição
Fundamentos da programação de computadores 2ª edição
 
Aula 5 aed - matrizes
Aula 5   aed - matrizesAula 5   aed - matrizes
Aula 5 aed - matrizes
 
Livro Linguagem C - Completo
Livro Linguagem C - CompletoLivro Linguagem C - Completo
Livro Linguagem C - Completo
 
Introdução a estrutura de dados josé lucas rangel - raulzinho.cb@hotmail.com
Introdução a estrutura de dados   josé lucas rangel - raulzinho.cb@hotmail.comIntrodução a estrutura de dados   josé lucas rangel - raulzinho.cb@hotmail.com
Introdução a estrutura de dados josé lucas rangel - raulzinho.cb@hotmail.com
 
Algoritmos e Programação: Matrizes
Algoritmos e Programação: MatrizesAlgoritmos e Programação: Matrizes
Algoritmos e Programação: Matrizes
 
Introdução à linguagem c
Introdução à linguagem cIntrodução à linguagem c
Introdução à linguagem c
 
Linguagem C 05 Vetores E Matrizes
Linguagem C 05 Vetores E MatrizesLinguagem C 05 Vetores E Matrizes
Linguagem C 05 Vetores E Matrizes
 
Linguagem C 03 Estruturas De Decisao
Linguagem C 03 Estruturas De DecisaoLinguagem C 03 Estruturas De Decisao
Linguagem C 03 Estruturas De Decisao
 
Estrutura de decisão switch case
Estrutura de decisão switch caseEstrutura de decisão switch case
Estrutura de decisão switch case
 
Fundamentos da programação de computadores 1ª edição
Fundamentos da programação de computadores   1ª ediçãoFundamentos da programação de computadores   1ª edição
Fundamentos da programação de computadores 1ª edição
 
Aula 3 algoritmos
Aula 3   algoritmosAula 3   algoritmos
Aula 3 algoritmos
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHP
 
Glosario de qbasic liliana
Glosario de qbasic lilianaGlosario de qbasic liliana
Glosario de qbasic liliana
 
PROGRAMAS QBASIC
PROGRAMAS QBASICPROGRAMAS QBASIC
PROGRAMAS QBASIC
 
Recursividade
RecursividadeRecursividade
Recursividade
 
Funções em C
Funções em CFunções em C
Funções em C
 
Análise assintótica
Análise assintóticaAnálise assintótica
Análise assintótica
 
C# .NET - Um overview da linguagem
C# .NET - Um overview da linguagem C# .NET - Um overview da linguagem
C# .NET - Um overview da linguagem
 
CakePHP com sotaque brasileiro
CakePHP com sotaque brasileiroCakePHP com sotaque brasileiro
CakePHP com sotaque brasileiro
 
Assembly para pc-25paginas
Assembly para pc-25paginasAssembly para pc-25paginas
Assembly para pc-25paginas
 

Semelhante a Linguagem C - Strings

Biblioteca strings profª ms
Biblioteca strings profª msBiblioteca strings profª ms
Biblioteca strings profª ms
Joelsa Soares
 
Aula 14 - Entrada e Saida em linguagem C.pdf
Aula 14 - Entrada e Saida em linguagem C.pdfAula 14 - Entrada e Saida em linguagem C.pdf
Aula 14 - Entrada e Saida em linguagem C.pdf
victorlopes714651
 
Ling c
Ling cLing c
Algoritmo e lógica de programação - aula 2
Algoritmo e lógica de programação - aula 2Algoritmo e lógica de programação - aula 2
Algoritmo e lógica de programação - aula 2
engenhariadecomputacao
 
Curso Completo de Linguagem de Programação C
Curso Completo de Linguagem de Programação CCurso Completo de Linguagem de Programação C
Curso Completo de Linguagem de Programação C
JoberthSilva
 
Comandos de Controle de Programa em C
Comandos de Controle de Programa em CComandos de Controle de Programa em C
Comandos de Controle de Programa em C
Elaine Cecília Gatto
 
Introdução a Linguagem C
Introdução a Linguagem CIntrodução a Linguagem C
Introdução a Linguagem C
apolllorj
 
Aula09 traducaosin110
Aula09 traducaosin110Aula09 traducaosin110
Aula09 traducaosin110
Aldo Henrique Dias Mendes
 
Aula 10 de algoritmos com raciocínio lógico e desenvolvimento de código
Aula 10 de algoritmos com raciocínio lógico e desenvolvimento de códigoAula 10 de algoritmos com raciocínio lógico e desenvolvimento de código
Aula 10 de algoritmos com raciocínio lógico e desenvolvimento de código
ssusere36c31
 
Linguagem C - Controle de Programa
Linguagem C - Controle de ProgramaLinguagem C - Controle de Programa
Linguagem C - Controle de Programa
Elaine Cecília Gatto
 
Linguagem c wellington telles - aula 03
Linguagem c   wellington telles - aula 03Linguagem c   wellington telles - aula 03
Linguagem c wellington telles - aula 03
profwtelles
 
PHP - Strings
PHP - StringsPHP - Strings
PHP - Strings
Fabio Moura Pereira
 
Programação C - Aula 2
Programação C - Aula 2Programação C - Aula 2
Programação C - Aula 2
Dalton Valadares
 
unidade04-c3-handout.pdf
unidade04-c3-handout.pdfunidade04-c3-handout.pdf
unidade04-c3-handout.pdf
AlexSouza974126
 
Linguagem C (Parte 2)
Linguagem C (Parte 2)Linguagem C (Parte 2)
Linguagem C (Parte 2)
Daniel Barão
 
Cet P Sistemas Linguagem C Introducao
Cet P Sistemas Linguagem C IntroducaoCet P Sistemas Linguagem C Introducao
Cet P Sistemas Linguagem C Introducao
mmind
 
Aula de Algoritmos II - Turma 222
Aula de Algoritmos II - Turma 222Aula de Algoritmos II - Turma 222
Aula de Algoritmos II - Turma 222
Bianca Dantas
 
Java4
Java4Java4
Linguagem C clecioamerico
Linguagem C clecioamericoLinguagem C clecioamerico
Linguagem C clecioamerico
Clécio Américo de Lima
 
Javafx Introdução
Javafx IntroduçãoJavafx Introdução
Javafx Introdução
Fábio Nogueira de Lucena
 

Semelhante a Linguagem C - Strings (20)

Biblioteca strings profª ms
Biblioteca strings profª msBiblioteca strings profª ms
Biblioteca strings profª ms
 
Aula 14 - Entrada e Saida em linguagem C.pdf
Aula 14 - Entrada e Saida em linguagem C.pdfAula 14 - Entrada e Saida em linguagem C.pdf
Aula 14 - Entrada e Saida em linguagem C.pdf
 
Ling c
Ling cLing c
Ling c
 
Algoritmo e lógica de programação - aula 2
Algoritmo e lógica de programação - aula 2Algoritmo e lógica de programação - aula 2
Algoritmo e lógica de programação - aula 2
 
Curso Completo de Linguagem de Programação C
Curso Completo de Linguagem de Programação CCurso Completo de Linguagem de Programação C
Curso Completo de Linguagem de Programação C
 
Comandos de Controle de Programa em C
Comandos de Controle de Programa em CComandos de Controle de Programa em C
Comandos de Controle de Programa em C
 
Introdução a Linguagem C
Introdução a Linguagem CIntrodução a Linguagem C
Introdução a Linguagem C
 
Aula09 traducaosin110
Aula09 traducaosin110Aula09 traducaosin110
Aula09 traducaosin110
 
Aula 10 de algoritmos com raciocínio lógico e desenvolvimento de código
Aula 10 de algoritmos com raciocínio lógico e desenvolvimento de códigoAula 10 de algoritmos com raciocínio lógico e desenvolvimento de código
Aula 10 de algoritmos com raciocínio lógico e desenvolvimento de código
 
Linguagem C - Controle de Programa
Linguagem C - Controle de ProgramaLinguagem C - Controle de Programa
Linguagem C - Controle de Programa
 
Linguagem c wellington telles - aula 03
Linguagem c   wellington telles - aula 03Linguagem c   wellington telles - aula 03
Linguagem c wellington telles - aula 03
 
PHP - Strings
PHP - StringsPHP - Strings
PHP - Strings
 
Programação C - Aula 2
Programação C - Aula 2Programação C - Aula 2
Programação C - Aula 2
 
unidade04-c3-handout.pdf
unidade04-c3-handout.pdfunidade04-c3-handout.pdf
unidade04-c3-handout.pdf
 
Linguagem C (Parte 2)
Linguagem C (Parte 2)Linguagem C (Parte 2)
Linguagem C (Parte 2)
 
Cet P Sistemas Linguagem C Introducao
Cet P Sistemas Linguagem C IntroducaoCet P Sistemas Linguagem C Introducao
Cet P Sistemas Linguagem C Introducao
 
Aula de Algoritmos II - Turma 222
Aula de Algoritmos II - Turma 222Aula de Algoritmos II - Turma 222
Aula de Algoritmos II - Turma 222
 
Java4
Java4Java4
Java4
 
Linguagem C clecioamerico
Linguagem C clecioamericoLinguagem C clecioamerico
Linguagem C clecioamerico
 
Javafx Introdução
Javafx IntroduçãoJavafx Introdução
Javafx Introdução
 

Mais de Elaine Cecília Gatto

A influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaA influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etaria
Elaine Cecília Gatto
 
Inteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaInteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à Medicina
Elaine Cecília Gatto
 
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Elaine Cecília Gatto
 
Apresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCApresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPC
Elaine Cecília Gatto
 
entrevista r7.pdf
entrevista r7.pdfentrevista r7.pdf
entrevista r7.pdf
Elaine Cecília Gatto
 
Como a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxComo a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptx
Elaine Cecília Gatto
 
Empoderamento Feminino
Empoderamento FemininoEmpoderamento Feminino
Empoderamento Feminino
Elaine Cecília Gatto
 
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Elaine Cecília Gatto
 
Community Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarCommunity Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCar
Elaine Cecília Gatto
 
Classificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesClassificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de Correlações
Elaine Cecília Gatto
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
Elaine Cecília Gatto
 
Community Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationCommunity Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label Classification
Elaine Cecília Gatto
 
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfMulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Elaine Cecília Gatto
 
Curtinhas de sábado.pdf
Curtinhas de sábado.pdfCurtinhas de sábado.pdf
Curtinhas de sábado.pdf
Elaine Cecília Gatto
 
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Elaine Cecília Gatto
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
Elaine Cecília Gatto
 
Pipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoPipeline desdobramento escalonamento
Pipeline desdobramento escalonamento
Elaine Cecília Gatto
 
Cheat sheet Mips 32 bits
Cheat sheet Mips 32 bitsCheat sheet Mips 32 bits
Cheat sheet Mips 32 bits
Elaine Cecília Gatto
 
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsResumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Elaine Cecília Gatto
 
Como descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoComo descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcação
Elaine Cecília Gatto
 

Mais de Elaine Cecília Gatto (20)

A influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaA influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etaria
 
Inteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaInteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à Medicina
 
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
 
Apresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCApresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPC
 
entrevista r7.pdf
entrevista r7.pdfentrevista r7.pdf
entrevista r7.pdf
 
Como a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxComo a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptx
 
Empoderamento Feminino
Empoderamento FemininoEmpoderamento Feminino
Empoderamento Feminino
 
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
 
Community Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarCommunity Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCar
 
Classificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesClassificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de Correlações
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
 
Community Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationCommunity Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label Classification
 
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfMulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
 
Curtinhas de sábado.pdf
Curtinhas de sábado.pdfCurtinhas de sábado.pdf
Curtinhas de sábado.pdf
 
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
 
Pipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoPipeline desdobramento escalonamento
Pipeline desdobramento escalonamento
 
Cheat sheet Mips 32 bits
Cheat sheet Mips 32 bitsCheat sheet Mips 32 bits
Cheat sheet Mips 32 bits
 
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsResumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
 
Como descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoComo descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcação
 

Último

Telepsiquismo Utilize seu poder extrassensorial para atrair prosperidade (Jos...
Telepsiquismo Utilize seu poder extrassensorial para atrair prosperidade (Jos...Telepsiquismo Utilize seu poder extrassensorial para atrair prosperidade (Jos...
Telepsiquismo Utilize seu poder extrassensorial para atrair prosperidade (Jos...
fran0410
 
Resumo de Química 10º ano Estudo exames nacionais
Resumo de Química 10º ano Estudo exames nacionaisResumo de Química 10º ano Estudo exames nacionais
Resumo de Química 10º ano Estudo exames nacionais
beatrizsilva525654
 
UFCD_10789_Metodologias de desenvolvimento de software_índice.pdf
UFCD_10789_Metodologias de desenvolvimento de software_índice.pdfUFCD_10789_Metodologias de desenvolvimento de software_índice.pdf
UFCD_10789_Metodologias de desenvolvimento de software_índice.pdf
Manuais Formação
 
O Profeta Jeremias - A Biografia de Jeremias.pptx4
O Profeta Jeremias - A Biografia de Jeremias.pptx4O Profeta Jeremias - A Biografia de Jeremias.pptx4
O Profeta Jeremias - A Biografia de Jeremias.pptx4
DouglasMoraes54
 
Como montar o mapa conceitual editado.pdf
Como montar o mapa conceitual editado.pdfComo montar o mapa conceitual editado.pdf
Como montar o mapa conceitual editado.pdf
AlineOliveira625820
 
Tudo sobre a Inglaterra, curiosidades, moeda.pptx
Tudo sobre a Inglaterra, curiosidades, moeda.pptxTudo sobre a Inglaterra, curiosidades, moeda.pptx
Tudo sobre a Inglaterra, curiosidades, moeda.pptx
IACEMCASA
 
497417426-conheca-os-principais-graficos-da-radiestesia-e-da-radionica.pdf
497417426-conheca-os-principais-graficos-da-radiestesia-e-da-radionica.pdf497417426-conheca-os-principais-graficos-da-radiestesia-e-da-radionica.pdf
497417426-conheca-os-principais-graficos-da-radiestesia-e-da-radionica.pdf
JoanaFigueira11
 
A festa junina é uma tradicional festividade popular que acontece durante o m...
A festa junina é uma tradicional festividade popular que acontece durante o m...A festa junina é uma tradicional festividade popular que acontece durante o m...
A festa junina é uma tradicional festividade popular que acontece durante o m...
ANDRÉA FERREIRA
 
UFCD_7211_Os sistemas do corpo humano_ imunitário, circulatório, respiratório...
UFCD_7211_Os sistemas do corpo humano_ imunitário, circulatório, respiratório...UFCD_7211_Os sistemas do corpo humano_ imunitário, circulatório, respiratório...
UFCD_7211_Os sistemas do corpo humano_ imunitário, circulatório, respiratório...
Manuais Formação
 
TUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
TUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGTUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
TUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
ProfessoraTatianaT
 
Caça-palavaras e cruzadinha - Dígrafos.
Caça-palavaras  e cruzadinha  - Dígrafos.Caça-palavaras  e cruzadinha  - Dígrafos.
Caça-palavaras e cruzadinha - Dígrafos.
Mary Alvarenga
 
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIASA SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
HisrelBlog
 
Aula de fundamentos de Programação Orientada a Objeto na linguagem de program...
Aula de fundamentos de Programação Orientada a Objeto na linguagem de program...Aula de fundamentos de Programação Orientada a Objeto na linguagem de program...
Aula de fundamentos de Programação Orientada a Objeto na linguagem de program...
samucajaime015
 
Dicas de normas ABNT para trabalho de conclusão de curso
Dicas de normas ABNT para trabalho de conclusão de cursoDicas de normas ABNT para trabalho de conclusão de curso
Dicas de normas ABNT para trabalho de conclusão de curso
Simone399395
 
Curativo de cateter venoso central na UTI.pdf
Curativo de cateter venoso central na UTI.pdfCurativo de cateter venoso central na UTI.pdf
Curativo de cateter venoso central na UTI.pdf
BiancaCristina75
 
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdfUFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
Manuais Formação
 
Cartinhas de solidariedade e esperança.pptx
Cartinhas de solidariedade e esperança.pptxCartinhas de solidariedade e esperança.pptx
Cartinhas de solidariedade e esperança.pptx
Zenir Carmen Bez Trombeta
 
A influência do comércio eletrônico no processo de gestão das livrarias e edi...
A influência do comércio eletrônico no processo de gestão das livrarias e edi...A influência do comércio eletrônico no processo de gestão das livrarias e edi...
A influência do comércio eletrônico no processo de gestão das livrarias e edi...
AntonioLobosco3
 
A Núbia e o Reino De Cuxe- 6º ano....ppt
A Núbia e o Reino De Cuxe- 6º ano....pptA Núbia e o Reino De Cuxe- 6º ano....ppt
A Núbia e o Reino De Cuxe- 6º ano....ppt
WilianeBarbosa2
 
UFCD_4667_Preparação e confeção de molhos e fundos de cozinha_índice.pdf
UFCD_4667_Preparação e confeção de molhos e fundos de cozinha_índice.pdfUFCD_4667_Preparação e confeção de molhos e fundos de cozinha_índice.pdf
UFCD_4667_Preparação e confeção de molhos e fundos de cozinha_índice.pdf
Manuais Formação
 

Último (20)

Telepsiquismo Utilize seu poder extrassensorial para atrair prosperidade (Jos...
Telepsiquismo Utilize seu poder extrassensorial para atrair prosperidade (Jos...Telepsiquismo Utilize seu poder extrassensorial para atrair prosperidade (Jos...
Telepsiquismo Utilize seu poder extrassensorial para atrair prosperidade (Jos...
 
Resumo de Química 10º ano Estudo exames nacionais
Resumo de Química 10º ano Estudo exames nacionaisResumo de Química 10º ano Estudo exames nacionais
Resumo de Química 10º ano Estudo exames nacionais
 
UFCD_10789_Metodologias de desenvolvimento de software_índice.pdf
UFCD_10789_Metodologias de desenvolvimento de software_índice.pdfUFCD_10789_Metodologias de desenvolvimento de software_índice.pdf
UFCD_10789_Metodologias de desenvolvimento de software_índice.pdf
 
O Profeta Jeremias - A Biografia de Jeremias.pptx4
O Profeta Jeremias - A Biografia de Jeremias.pptx4O Profeta Jeremias - A Biografia de Jeremias.pptx4
O Profeta Jeremias - A Biografia de Jeremias.pptx4
 
Como montar o mapa conceitual editado.pdf
Como montar o mapa conceitual editado.pdfComo montar o mapa conceitual editado.pdf
Como montar o mapa conceitual editado.pdf
 
Tudo sobre a Inglaterra, curiosidades, moeda.pptx
Tudo sobre a Inglaterra, curiosidades, moeda.pptxTudo sobre a Inglaterra, curiosidades, moeda.pptx
Tudo sobre a Inglaterra, curiosidades, moeda.pptx
 
497417426-conheca-os-principais-graficos-da-radiestesia-e-da-radionica.pdf
497417426-conheca-os-principais-graficos-da-radiestesia-e-da-radionica.pdf497417426-conheca-os-principais-graficos-da-radiestesia-e-da-radionica.pdf
497417426-conheca-os-principais-graficos-da-radiestesia-e-da-radionica.pdf
 
A festa junina é uma tradicional festividade popular que acontece durante o m...
A festa junina é uma tradicional festividade popular que acontece durante o m...A festa junina é uma tradicional festividade popular que acontece durante o m...
A festa junina é uma tradicional festividade popular que acontece durante o m...
 
UFCD_7211_Os sistemas do corpo humano_ imunitário, circulatório, respiratório...
UFCD_7211_Os sistemas do corpo humano_ imunitário, circulatório, respiratório...UFCD_7211_Os sistemas do corpo humano_ imunitário, circulatório, respiratório...
UFCD_7211_Os sistemas do corpo humano_ imunitário, circulatório, respiratório...
 
TUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
TUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGTUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
TUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
 
Caça-palavaras e cruzadinha - Dígrafos.
Caça-palavaras  e cruzadinha  - Dígrafos.Caça-palavaras  e cruzadinha  - Dígrafos.
Caça-palavaras e cruzadinha - Dígrafos.
 
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIASA SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
 
Aula de fundamentos de Programação Orientada a Objeto na linguagem de program...
Aula de fundamentos de Programação Orientada a Objeto na linguagem de program...Aula de fundamentos de Programação Orientada a Objeto na linguagem de program...
Aula de fundamentos de Programação Orientada a Objeto na linguagem de program...
 
Dicas de normas ABNT para trabalho de conclusão de curso
Dicas de normas ABNT para trabalho de conclusão de cursoDicas de normas ABNT para trabalho de conclusão de curso
Dicas de normas ABNT para trabalho de conclusão de curso
 
Curativo de cateter venoso central na UTI.pdf
Curativo de cateter venoso central na UTI.pdfCurativo de cateter venoso central na UTI.pdf
Curativo de cateter venoso central na UTI.pdf
 
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdfUFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
 
Cartinhas de solidariedade e esperança.pptx
Cartinhas de solidariedade e esperança.pptxCartinhas de solidariedade e esperança.pptx
Cartinhas de solidariedade e esperança.pptx
 
A influência do comércio eletrônico no processo de gestão das livrarias e edi...
A influência do comércio eletrônico no processo de gestão das livrarias e edi...A influência do comércio eletrônico no processo de gestão das livrarias e edi...
A influência do comércio eletrônico no processo de gestão das livrarias e edi...
 
A Núbia e o Reino De Cuxe- 6º ano....ppt
A Núbia e o Reino De Cuxe- 6º ano....pptA Núbia e o Reino De Cuxe- 6º ano....ppt
A Núbia e o Reino De Cuxe- 6º ano....ppt
 
UFCD_4667_Preparação e confeção de molhos e fundos de cozinha_índice.pdf
UFCD_4667_Preparação e confeção de molhos e fundos de cozinha_índice.pdfUFCD_4667_Preparação e confeção de molhos e fundos de cozinha_índice.pdf
UFCD_4667_Preparação e confeção de molhos e fundos de cozinha_índice.pdf
 

Linguagem C - Strings

  • 1. STRINGS Profª Ms. Engª Elaine Cecília Gatto Curso de Bacharelado em Engenharia de Computação Universidade do Sagrado CoraçãO – USC Bauru/SP
  • 2. STRINGS • São sequências, conjuntos ou cadeira de caracteres diversos, sendo representados por aspas; • Em C não existe um tipo STRING explícito; • Não é um tipo primitivo da linguagem; • Não existe uma palavra reservada que declare uma variável do tipo STRING (como acontece em pascal, java, etc); • Em C utiliza-se um vetor ou matriz do tipo CHAR para armazenar uma STRING; • Mas qual o tamanho da STRING? Quando ela termina? • Utilizar um caracter terminador: 0 (null = zero)  forma que as funções reconhecem o fim da string;
  • 3. STRINGS • Caracteres são blocos de montagem fundamentais dos programas-fonte • Cada programa é composto por uma sequencia de caracteres que, ao serem agrupados de modo significativo, são interpretados pelo computador como uma série de instruções que serão usadas na realização de tarefa • CONSTANTE DE CARACTER: é um valor INT representado por um caracter entre aspas simples • CONJUNTO DE CARACTERES DA MÁQUINA: exemplo o código ASCII
  • 4. STRINGS • STRING: consistem em uma série de caracteres tratados como uma únic entidade • CARACTERES ESPECIAIS: acentos, pontuação, etc • STRINGS LITERAIS ou CONSTANTES STRINGS: são escritas entre aspas duplas, exemplo: • “João da Silva” • “14-2107-7000”
  • 5. STRINGS • É um array de caracteres que termina no caractere ‘0’ • O valor de uma STRING é o endereço de seu primeiro caractere • STRINGs são acessadas por meio de um ponteiro para o primeiro caractere da STRING • char cor[] = “azul”; • const char *corPtr = “azul”; • char cor[] = {‘a’, ‘z’, ‘u’, ‘l’, ‘0’}
  • 6. Strings Constantes • Sempre que o compilador encontra qualquer coisa entre aspas duplas, ele reconhece que se trata de uma string constante. printf( “ %s ”, “ Saudações ”); Posição da memória string 1092 S 1093 A 1094 U 1095 D 1096 A 1096 C 1097 O 1098 E 1099 S 1100 0
  • 7. SCANF( ) • É uma função da biblioteca padrão de entrada/saída • A função SCANF() lerá caracteres até que se encontre: • Espaço • Tabulação • Nova linha • Indicador de fim de arquivo • Use %s de modo que scanf leia a quantidade de caracteres exatos que você deseja. Exemplo: char word[20]; scanf( “ %19s ”, word);
  • 8. SCANF( ) #include <stdio.h> #include <stdlib.h> int main(){ char nome[100]; printf("Digite o seu nome: "); scanf("%s", nome); printf("Saudacoes, %s", nome); printf("n "); system("PAUSE"); return 0; } • Observe a saída do programa! Consegue notar o que há de diferente entre a entrada de dados e a saída?
  • 9. SCANF( ) #include <stdio.h> #include <stdlib.h> int main(){ char nome[100]; printf("Digite o seu nome: "); scanf("%s", nome); printf("Saudacoes, %s", nome); printf("n "); system("PAUSE"); return 0; } • Esta instrução lê cada caractere digitado e os armazena a partir do endereço nome. • O processo termina quando um caractere branco é encontrado. • Nesse ponto é incluído automaticamente o caractere 0 na próxima posição livre. • Não é permitido ultrapassar o limite estipulado na criação do vetor/matriz. • O espaço para 0 deve ser previsto. • A função scanf() entende um espaço em branco como o término da entrada. • Por isso, na saída, apenas o primeiro nome digitado é apresentado.
  • 10. SCANF( ) #include <stdio.h> #include <stdlib.h> int main(){ char nome[100]; printf("Digite o seu nome: "); scanf("%s", nome); printf("Saudacoes, %s", nome); printf("n "); system("PAUSE"); return 0; } • Mas se digitarmos o nome inteiro sem espaços, observe a saída! • Observe esta instrução novamente. Porque está sendo usado nome e não &nome? • Neste caso, nome é equivalente a &nome[0] • O nome de uma matriz é o seu endereço inicial • Scanf() é muito utilizada para ler uma mistura de tipos de dados numa mesma instrução.
  • 11. SSCANF( ) INT SSCANF ( CHAR *S, CONST CHAR * FORMAT, ...); • • • • Equivalente a scanf A entrada é lida a partir do array S em vez do teclado Retorna o número de caracteres escritos em S Retorna EOF (END-OF-FILE) se ocorrer um erro • É uma função da biblioteca padrão de entrada/saída • EXEMPLO, LIVRO DEITEL, 8.16
  • 12. GETS( ) • char *gets (char *s); • Pede ao usuario que entre uma string, que sera armazenada na string s. • O ponteiro que a funcao retorna é o proprio s. • gets nao é uma funcao segura. • Por que? • Porque com gets pode ocorrer um estouro da quantidade de posicoes que foi especificada na string. • É uma função da biblioteca padrão de entrada/saída
  • 13. GETS( ) #include <stdio.h> #include <stdlib.h> int main(){ char nome[100]; printf("Digite o seu nome: "); gets(nome); printf("Saudacoes, %s", nome); printf("n "); system("PAUSE"); return 0; } • Usada para leitura de textos ; • Propósito: ler unicamente uma cadeia de caracteres do teclado enquano a tecla ENTER não for pressionada; • Todos os caracteres digitados são armazenados, inclusive espaços e tabulações; • O caractere 0 é incluído no final;
  • 14. GETS( ) #include <stdio.h> #include <stdlib.h> int main(){ char nome[100]; printf("Digite o seu nome: "); gets(nome); printf("Saudacoes, %s", nome); printf("n "); system("PAUSE"); return 0; } • Problemas com esta função: pode armazenar caracteres além da capacidade definida;
  • 15. GETS( ) #include <stdio.h> #include <stdlib.h> int main(){ char nome[10]; printf("Exemplo de estouro de string. n"); printf("Digite o seu nome: "); gets(nome); printf("Saudacoes, %s", nome); printf("n "); system("PAUSE"); return 0; } • Neste exemplo, é declarado um vetor de tamanho 10, mas o nome digitado contém 20 caracteres. Observe que o vetor armazena 10 caracters a mais do que foi especificado. • Para resolver este problema, deve-se usar FGETS()
  • 16. GETCHAR( ) • INT GETCHAR (VOID) • É uma função da biblioteca padrão de entrada/saída • Insere o caractere seguinte da entrada-padrão e o retorna como um inteiro • A função getchar() lê um caracter e retorna um inteiro que é: • o código do caracter, ou • o valor -1 que corresponde a fim de ficheiro
  • 17. GETCHAR( ) /* Exemplo da utilização de getchar */ #include <stdio.h> int main() { char caracter; printf("n"); fflush(stdout); printf("Utilizando getchar()n"); fflush(stdout); printf("--------------------n"); fflush(stdout); printf("n"); fflush(stdout); printf("Entre com um caracter :"); fflush(stdout); caracter = getchar(); printf("n Você digitou o caracter %c n n", caracter); fflush(stdout); return(0); }
  • 18. GETCHAR( ) #include<stdio.h> main() { int c; int i=0; while((c = getchar()) != -1) if (c == 'a') i++; printf("Foram lidos %d a's",i); }
  • 19. FGETS( ) • CHAR *FGETS ( CHAR *S, INT N, FILE *STREAM) • Insere caracteres de fluxo especificado para o array S até que: • um caractere de newline seja lido, ou • fim de arquivo seja encontrado, ou • até que n-1 bytes sejam lidos • Um caractere nulo de finalização é anexado ao array • Retorna a string que foi lida em S • É uma função da biblioteca padrão de entrada/saída
  • 20. FGETS( ) #include <stdio.h> #include <stdlib.h> int main(){ char nome[15]; printf("Digite o seu nome: "); fgets(nome, 15, stdin); printf("Saudacoes, %s", nome); printf("n "); system("PAUSE"); return 0; } • O código ao lado utiliza fgets. O vetor declarado tem 15 posições e somente essas 15 posições são preenchidas. • Na saída, observa-se que o nome digitado é maior que as 15 posições, e portanto, o restante do nome é desprezado. • STDIN: fluxo padrão de entrada-
  • 21. PUTS( ) • INT PUTS ( CONST CHAR *S ) • Imprime a string S seguida por um caractere de newline • Retorna um inteiro diferente de zero se for bem sucedida • Retorna um EOF se ocorrer um erro • É uma função da biblioteca padrão de entrada/saída
  • 22. PUTS( ) #include <stdio.h> #include <stdlib.h> int main(){ char nome[80]; printf("Digite o seu nome: "); gets(nome); puts(""); puts("Saudacoes, "); puts(nome); puts(""); puts("Imprimindo a partir da quarta posicao: "); puts(&nome[4]); puts(""); puts("a funcao puts() pula linha automaticamente!"); puts(""); system("PAUSE"); return 0; } • É o complemento da função gets(); • Propósito: imprimir uma única string por vez; • O endereço da string deve ser enviado para puts como argumento;
  • 23. PUTCHAR( ) • INT PUTCHAR ( INT C ); • Imprime o caracter armazenado em C e o retorna como um inteiro • É uma função da biblioteca padrão de entrada/saída
  • 24. SPRINTF( ) • INT SPRINTF ( CHAR *S, CONST CHAR *FORMAT, ... ); • • • • Equivalente a printf A saída é armazenada no array S em vez de impressa na tela Retorna o número de caracteres escritos em S Retorna EOF se ocorrer um erro • É uma função da biblioteca padrão de entrada/saída • EXEMPLO, LIVRO DEITEL, 8.15
  • 25. SPRINTF( ) #include <stdio.h> int main() { int i; char string1[20]; printf( " Entre um valor inteiro: "); fflush(stdout); scanf("%d", &i); sprintf(string1, "Valor de i = %d", i); puts(string1); return 0; }
  • 26. FGETS( ) E PUTCHAR( ) #include <stdio.h> void reverse(const char * const sPtr); int main(){ char sentenca[80]; printf(" Digite uma linha de texto: n "); fflush(stdout); fgets(sentenca, 80, stdin); printf(" n A linha impressa na ordem inversa é: n "); fflush(stdout); reverse(sentenca); system("PAUSE"); return 0; } void reverse(const char * const sPtr){ if(sPtr[0] == '0'){ return; } else{ reverse(&sPtr[1]); //recursão putchar(sPtr[0]); //exibe o caractere } }
  • 27. GETCHAR( ) e PUTS( ) • EXEMPLO, LIVRO DEITEL, 8.14
  • 28. Inicializando strings char nome[] = {‘E’, ‘l’, ‘a’, ‘i’, ‘n’, ‘e’, ‘0’}; char nome[] = “Elaine”; EXEMPLO: #include <stdio.h> #include <stdlib.h> int main(){ char saudacao[]="Saudacoes, "; char nome[80]; printf(" Digite o seu nome: "); gets(nome); printf("%s%s n", saudacao, nome); system("PAUSE"); return 0; }
  • 29. STRCPY( ) • CHAR *STRCPY ( CHAR *S1, CONST CHAR *S2 ); • Copia a string s2 no array s1 • O valor de s1 é retornado • É uma função de manipulação de strings
  • 30. STRCPY( ) #include <stdio.h> #include <stdlib.h> #include <string.h> int main(){ char nome_original[30] ; char nome_copia[30]; printf(" Digite um nome: "); gets(nome_original); strcpy(nome_copia, nome_original); printf(" Nome original: "); puts(nome_original); printf(" Nome copia: "); puts(nome_copia); system("PAUSE"); return 0; } • Copia ou atribui o conteúdo da string de origem para a string de destino. Ambas devem ter, no mínimo, o mesmo tamanho; • Sintaxe: strcpy(string_destino, string_origem);
  • 31. STRCAT( ) • CHAR *STRCAT ( CHAR *S1, CONST CHAR *S2 ); • Acrescenta a string s2 ao array s1 • O primeiro caractere de s2 sobrescreve o caractere nulo de finalização de s1 • O valor de s1 é retornado • É uma função de manipulação de strings
  • 32. STRCAT( ) #include <stdio.h> #include <stdlib.h> #include <string.h> int main(){ char cadeia1[100]; char cadeia2[10]; printf(" Digite o seu primeiro nome: "); gets(cadeia1); printf(" Digite o seu segundo nome: "); gets(cadeia2); strcat(cadeia1, cadeia2); printf("%s", cadeia1); puts(""); system("PAUSE"); return 0; } • Concatena o conteúdo da string de origem ao final do conteúdo da string de destino. • Essa função não verifica se a primeira cadeia tem espaço suficiente para que a segunda cadeia seja adicionada ao seu final. • Sintaxe: strcat(string_destino, string origem);
  • 33. STRNCPY( ) • Char *strncpy ( char *s1, const char *s2, size_t n ) • Copia no maximo n caracteres da string2 no array s1 • O valor de s1 é retornado • É uma função de comparação de strings
  • 34. STRCPY e STRNCPY //exemplo STRCPY E STRNCPY #include <stdio.h> #include <string.h> int main(void){ char x[] = "Parabéns a você"; char y[25]; char z[15]; printf(" %s %s n %s %s n", "A string no array x é: ", x, "A string no arryz y é: ", y, strcpy(y,x)); fflush(stdout); strncpy(z, x, 14); z[14] = '0'; printf(" A string no array z é: %s", z); fflush(stdout); return 0; }
  • 35. STRNCAT( ) • Char *STRNCAT ( char *s1, const char *s2, size_t n ) • Acrescenta no máximo n caracteres da string s2 ao array s1. • O primeiro caractere de s2 sobrescreve o caractere nulo de finalização de s1 • O valor de s1 é retornado • É uma função de comparação de strings
  • 36. STRCMP( ) • INT STRCMP ( CONST CHAR *S1, CONST CHAR *S2 ); • Compara a string s1 com a string s2 • A função retorna 0, menor do que 0 ou maior do que 0 se s1 for igual, menor ou maior do que s2, respectivamente • É uma função de comparação de strings
  • 37. Função STRCMP( ) • Compara o conteúdo da string 1 com o conteúdo da string 2; • Retorna um número inteiro; • Se forem iguais, a função retorna zero; • Se o número retornado for menor que zero, então a string1 é menor que a string 2; • Se o número retornado for maior que zero, então a string1 é maior que a string2;
  • 38. STRNCMP( ) • INT STRNCMP ( CONST CHAR *S1, CONST CHAR *S2, SIZE_T N ); • Compara até n caracteres da string s1 com a string s2 • A função retorna 0, o menor do que 0 ou maior do que 0 se s1 for igual, menor ou maior do que s2, respectivamente • É uma função de comparação de strings
  • 39. STRCMP( ) #include <stdio.h> #include <stdlib.h> #include <string.h> int main(){ char string1[20], string2[20]; int resultado; printf(" Digite uma palavra: "); gets(string1); printf(" Digite uma palavra: "); gets(string2); resultado = strcmp(string1, string2); if(resultado ==0 ){ puts("As strings sao iguais."); } else{ puts("As strings sao diferentes."); } system("PAUSE"); return 0; }
  • 41. STRLEN( ) • SIZE_T STRLEN ( CONST CHAR *S ); • Determina o comprimento da string S • O número de caracteres anteriores ao caractere nulo de finalização é retornado
  • 42. Função STRLEN( ) #include <stdio.h> #include <stdlib.h> #include <string.h> int main(){ char string1[20], string2[20]; int tamanho1, tamanho2; printf(" Digite uma palavra: "); gets(string1); printf(" Digite uma palavra: "); gets(string2); tamanho1 = strlen(string1); tamanho2 = strlen(string2); printf("O tamanho da string1 e: %d", tamanho1); puts(""); printf("O tamanho da string2 e: %d", tamanho2); puts(""); system("PAUSE"); return 0; } • Recebe • • como argumento o endereço de uma string e retorna o seu tamanho; O comprimento do vetor/matriz da string deve ser um a mais que o inteiro retornado por strlen(); O terminador 0 não é contabilizado;
  • 43. Função STRUPR( ) #include <stdio.h> #include <stdlib.h> #include <string.h> int main(){ char string[20]; printf(" n Escreva uma palavra: "); gets(string); printf(" n String original: %s", string); strupr(string); printf(" n String convertida: %s", string); printf("nn"); system("pause"); return 0; } • Converte o conteúdo da string em letras maiusculas
  • 44. Função STRLWR( ) #include <stdio.h> #include <stdlib.h> #include <string.h> int main(){ char string[20]; printf(" n Escreva uma palavra com todas as letras em maiusculo: "); gets(string); printf(" n String original: %s", string); strupr(string); printf(" n String convertida: %s", string); printf("nn"); system("pause"); return 0; } • Converte o conteúdo da string em letras minusculas
  • 45. Conversão de Strings • Biblioteca de utilitários gerais: stdlib.h • Convertem strings de digitos em valores inteiros e de ponto flutuante Double atof ( const char *nPtr ); Converte a string NPTR em double Int atoi ( const char *nPtr ); Converte a string NPTR em int Long atol (const char *nPtr ); Converte a string NPTR em long int Double strtod ( const char *nPtr, char **endPtr ); Converte a string NPTR em double (**  ponteiro de uma string) Long strtol ( const char *nPtr, char **endPtr, int base ); Converte a string NPTR em long Unsigned long strtoul ( const char *nPtr, char **endPtr, int base ); Convertea a string NPTR em unsigned long
  • 46. Conversão de Strings • EXEMPLOS, LIVRO DO DEITEL
  • 47. STRCHR( ) • CHAR *STRCHR ( CONST CHAR *S, INT C ); • Localiza a primeira ocorrência do caractere C na string S • Se C for encontrado, um ponteiro para C em S é retornado • Caso contrário, um ponteiro NULL é retornado • É uma função de pesquisa • EXEMPLO 8.23, LIVRO DEITEL
  • 48. STRCSPN( ) SIZE_T STRCSPN ( CONST CHAR *S1, CONST CHAR *S2 ); • Determina e retorna o tamanho do segmento incial da string s1 que consiste apenas em caracteres contidos na string s2 • Exemplo 8.24, livro do deitel • É uma função de pesquisa
  • 49. STRSPN( ) • SIZE_T STRSPN ( CONST CHAR *S1, CONST CHAR *S2 ); • Determina e retorna o tamanho do segmento inicial da string s1 que consiste em caracteres não contidos na string s2 • Exemplo 8.27, livro deitel • É uma função de pesquisa
  • 50. STRPBRK( ) CHAR *STRPBRK ( CONST CHAR *S1, CONST CHAR *S2 ); • Localiza a primeira ocorrência na string s1 de qualquer caractere na string s2 • Se um caractere da string s2 for encontrado, um ponteiro para o caractere na string s1 é retornado • Caso contário, um ponteiro NULL é retornado • É uma função de pesquisa • Exemplo 8.25, livro deitel
  • 51. STRRCHR( ) • Char *strrchr ( const char *s, int c ); • Localiza a última ocorrência de C na string S • Se C for encontrado, um ponteiro para C na string S é retornado • Caso contrário, um ponteiro NULL é retornado • É uma função de pesquisa • Exemplo 8.26, livro do deitel
  • 52. STRSTR( ) • CHAR *STRSTR ( CONST CHAR *S1, CONST CHAR *S2 ); • Localiza a primeira ocorrência na string S1 da string S2 • Se a string for encontrada, um ponteiro para a string em S1 é retornado • Caso contrário, um ponteiro NULL é retornado • É uma função de pesquisa • Exemplo 8.28, livro do deitel
  • 53. STRTOK( ) • CHAR *STRTOK ( CHAR *S1, CONST CHAR *S2); • Uma sequencia de chamadas para STRTOK separa a string s1 em tokens separados por caracteres contidos na string s2 • TOKENS: partes lógicas. Exemplo: palavras em uma linha de texto • A primeira chamada contém S1 como primeiro argumento, e para que as chamadas seguintes continuem a separar tokens na mesma string, elas deverão conter NULL como primeiro argumento • Um ponteiro para o token em vigor é retornado por cada chamada. • Se não houve mais tokens quando a função for chamada, NULL será retornado • É uma função de pesquisa • exemplo 8.29, livro deitel
  • 54. Exercícios 1. Desenvolver um programa que obtenha as seguintes informações para os “n” colegas da sua turma de Programação de Computadores: variavel qtde caracteres nome 15 sobrenome 30 endereço 80 telefone 10 idade 3 • Realize as seguintes tarefas: • Copie o nome do seu colega para uma variável denominada nome2; • Concatene o sobrenome à variável nome2;
  • 55. Exercícios • Obtenha o tamanho da variável nome2; • Imprima todas as informações de cada um dos seus colegas na tela; 2. Faça um programa em C que leia 10 strings, imprima o tamanho de cada uma delas e troque as letras para maiusculas. Dica: use o FOR. 3. Troque as letras do exercício anterior, por minusculas. 4. Escreva um programa em C que receba o nome, a idade e o sexo de 10 pessoas e armazene, em um vetor/matriz, as pessoas que forem do sexo masculino e maiores de 18 anos.
  • 56. Exercícios 5. Escreva um programa que faça a seguinte pergunta ao usuário: “Quem é o criador da Linguagem C?”. O usuário deve escrever a resposta e o programa deve verificar: • Se o usuário responder corretamente, uma mensagem de “parabéns, voce acertou!”, deve ser emitida; • Se o usuário responder incorretamente, uma mensagem de “que pena, voce errou!”, deve ser emitida.