Escolar Documentos
Profissional Documentos
Cultura Documentos
– Semântica
• Tipo_de_dado – determina o tipo de dado que será
armazenado no vetor. Pode ser qualquer um dos tipos de dados
simples da linguagem C.
• Nome_vetor – identificador (nome da variável) pelo qual os
dados do vetor serão acessados.
• Tamanho_vetor – quantidade de dados que podem ser
armazenados. Determina a faixa dos índices do vetor:
– 0 até Tamanho_vetor - 1
Localização na memória
a[0] = 17;
a[1] = 33;
a[2] = 21;
a[3] = 67;
a[4] = 81;
}
a[índice]
0 1 2 3 4
a 17 33 21 67 81
UTFPR – Fundamentos de Programação 20
6.3. Características de um vetor
• Características do tipo vetor:
– Alocação estática de memória – as dimensões da estrutura
devem ser conhecidas no momento da sua declaração.
– Estrutura homogênea – dados armazenados são do
mesmo tipo.
– Alocação sequencial de memória – bytes contíguos.
Código fonte
• Texto é uma string capaz de armazenar 256 caracteres, indexados de S[0] até
S[255]. Em S[255], ou após o último caractere armazendo, conterá o caractere
NULL (‘\0’) para representar o final da string.
Localização na memória
UTFPR – Fundamentos de Programação 28
7.3 Leitura de strings
• Para usar a função scanf() para leitura de strings (textos) que
contenham espaços é necessário indicar que a leitura prosseguirá até
ser encontrado o caractere enter. A leitura pára somente quando
pressinada a tecla <ENTER>.
• Exemplo:
#include <stdio.h>
int main()
{
char nome[35];
return 0;
}
UTFPR – Fundamentos de Programação 29
7.3. Leitura de strings (cont.)
• A função gets() tem o objetivo de efetuar a leitura de dados do tipo string.
• A função gets() aceita caracteres em branco e coloca o caractere de
controle ’\0' somente quando for pressionada a tecla <ENTER>.
Exemplo:
#include <stdio.h>
int main()
{
char nome[35];
printf("Digite o seu nome: ");
gets(nome);
printf("\nNome informado: %s\n", nome);
return 0;
}
Exemplo:
#include <stdio.h>
int main()
{
char nome[35];
printf("Digite o seu nome: ");
gets(nome);
printf("\nNome informado: ");
puts(nome);
return 0;
}
int main()
{
int i;
//12 meses com três caracteres cada
char nomeMes[12][4] = {"jan", "fev", "mar", "abr", "mai",
"jun", "jul", "ago", "set", "out", "nov", "dez"};
#include <stdio.h>
#include <string.h>
int main()
{
char nome[100];
return 0;
}
int main()
{
char nome[20];
//strcpy(string_destino, string_origem);
strcpy(nome, "Fulano de Tal");
int main()
{
int a, b, c;
a = strcmp("aaa", "bbb");
b = strcmp("bbb", "aaa");
c = strcmp("ccc", "ccc");
printf("%d\n", a);
printf("%d\n", b);
printf("%d\n", c);
}
int main()
{
char nome[20] = "Mariza ", sobrenome[20]= "Dosciatti";
strcat(nome, sobrenome);
return 0;
}
#include <stdio.h>
#include <string.h>
int main()
{
char str1[40]="Eu adoro programar em C";
char *ptr;
#include <stdio.h>
#include <string.h>
int main()
{
char str1[40]= "Eu adoro programar em C";
char str2[15] = "programar";
char *ptr;
#include <stdio.h>
#include <string.h> //para strupr
#include <stdlib.h> //para gets
int main()
{
char str[20];
return 0;
}
#include <stdio.h>
#include <string.h> //para strlwr
#include <stdlib.h> //para gets
int main()
{
char str[20];
return 0;
}
#include <stdio.h>
int main()
{
char nome[20];
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main()
{
char str[8]= "1234.99";
float x;
x = atof(str);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main()
{
char str[8]= "1234.99";
int x;
x = atoi(str);
return 0;
}
int main(void)
{
char str[20];
int num = 65;
• Matrizes
– São tabelas de linhas e colunas ou de mais dimensões.
– Armazenam vetores dentro de vetores.
int matriz[2][4];
0 1 2 3 j, coluna
A[i][j] 0 17 33 21 15
1 13 81 97 67
i, linha
UTFPR – Fundamentos de Programação 46
Exemplo de matriz de duas dimensões
//Imprime 50 combinações de jogos para a megasena
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(void)
{
int matriz[50][6], i, j;
srand(time(NULL));
tipo nome[Tamanho1][Tamanho2][Tamanho3]...[TamanhoN];
• Exemplo:
int matriz[2][4] = {
};
int main(void)
{
int alunos=5, notas=3, matriz[alunos][notas], i, j;
• ???