Buscar

Resumo de Strings e math.h

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 3 páginas

Prévia do material em texto

Resumo de Strings 
Strings são vetores de caracteres. 
char variável[tamanho]; 
Quando você declara uma string você criará um vetor que armazenará tamanho-1 
caracteres, isso ocorre pq o ultimo índice corresponderá ao \n que significa o fim de 
cadeia de caracteres. Em outras palavras, se quer declarar uma string que armazene 20 
caracteres então ao declarar coloque o tamanho = 21, pois o ultimo será o \n. 
No comando scanf não é necessário o & para armazenar em uma variável string. 
Se você for armazenar em uma string um conjunto de caracteres contenha um espaço 
no meio não utilize apenas scanf(“ %s”,nome); e sim scanf(“ %[^\n]s”,nome); pois 
apenas %s ao encontrar o espaço não armazenará o restante dos caracteres e poderá 
dar erro no programa. 
Obs.: Outro ponto que vale a pena lembrar é que sendo %c ou %s ou %[^\n]s sempre 
coloquem um espaço entre as aspas e o % no scanf! 
Ex.: Nome sem espaço no meio 
int main() 
{ 
 char nome[20]; 
 printf("Digite um nome:\n"); 
 scanf(" %s",nome); 
 printf("Olá %s\n",nome); 
 return 0 ; 
} 
 
Ex.: Nome com espaço no meio 
int main() 
{ 
 char nome[20]; 
 printf("Digite um nome:\n"); 
 scanf(" %[^\n]s",nome); 
 printf("Olá %s\n",nome); 
 return 0 ; 
} 
 
Matrizes de caracteres 
Se uma string é um vetor de caracteres então um vetor de strings é uma matriz de 
caracteres. 
char variável[linhas][colunas]; 
Linhas = quantidade de strings 
Colunas = quantidade de caracteres que cada string possuirá. 
Para recolher cada nome só precisamos identificar em que linha será armazenada cada 
nome. 
Ex.: int main() 
{ 
 char nome[5][20]; 
 int i ; 
 for( i = 0 ; i < 5 ; i++ ) 
 { 
 printf("Digite um nome:\n"); 
 scanf(" %s",nome[i]); 
 } 
 for( i = 0 ; i < 5 ; i++ ) 
 { 
 printf("Olá %s\n",nome[i]); 
 } 
 return 0 ; 
} 
Observe que char nome [5][20] corresponderá uma matriz de 5 strings(linhas) em que 
cada string terá 20 caracteres(colunas) incluindo o \n em cada linha, ou seja, 19 
caracteres e um \n para o fim de cada string em cada linha. 
 
Biblioteca string.h 
Será útil durante as provas declararem a biblioteca string.h para ter a possibilidade de 
comparar strings, copiar uma string em outra ou ver o tamanho de uma string. 
#include <string.h> 
strcpy (destino,origem) -> copiará a string que estiver em origem e na string que estará 
em destino. 
strcmp(string1,string2)-> Retorna um inteiro positivo se string1 é lexicamente 
posterior que string2; zero se as duas são idênticas; e negativo se string1 é lexicamente 
anterior que string2. Essa função retornara um número será útil caso vcs queiram 
comparar se duas strings são iguais. 
If ( strcmp(string1,string2) == 0 ) 
{ 
printf(“Strings iguais!\n”); 
} 
else 
{ 
 printf(“Strings diferentes!\n”); 
} 
strlen(string) -> retornara o tamanho de uma string, logo será necessário uma variável 
inteira para receber esse retorno. 
strcat(destino,origem) -> concatenará a string origem na string destino 
 Esse é o básico de strings que normalmente é cobrado em prova! 
Existe uma biblioteca muito usada para cálculos matemáticos que não citei nos 
resumos anteriores ela é a math.h que carrega funções de potencia e raiz quadrada 
que poderá ser útil nas provas. 
#include <math.h> 
pow(base,expoente) = retorna um valor numérico da base elevada ao expoente. 
sqrt(numero) = retornará a raiz de quadrada do numero.

Outros materiais