Buscar

Linguagem de Programação I Aula 09 (Original)

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

LINGUAGEM DE PROGRAMAÇÃO I
Aula 9- Armazenando para preservar - 1a parte 
Atenção aos Temas Principais dessa Aula
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Conteúdo Programático desta aula
Identificar os modos de abertura de um arquivo;
Conhecer e usar as funções fopen(), fclose(), feof();
Conhecer e usar as funções fputc(0, fgetc(), fputs(), fgets(), fprintf(), fscanf() e sscanf() para trabalhar no modo texto;
Analisar trechos de gravação, leitura e consulta em arquivos no modo texto. 
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Direto ao Assunto
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Variável Ponteiro de Arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
FILE *arq;
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
ARQUIVO TEXTO
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
ARQUIVO TEXTO
ARQUIVO BINÁRIO
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Como vou saber se é um arquivo texto ou um arquivo binário?
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Pelo modo de abertura que está presente na função que abre o arquivo externo.
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Função que abre um arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Função que abre um arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Função que abre um arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Função que abre um arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Função que abre um arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Função que abre um arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Função que abre um arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Função que abre um arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Função que abre um arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Função que abre um arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Função que abre um arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Modo de
Abertura
Breve Descrição
Permite Leitura
Permite Gravação
Arquivo Não Existe
Arquivo Existe
Posição
r
Leitura 
SIM
NÃO
NULL
OK
Início
w
Escrita
NÃO
SIM
CRIA
ReCRIA
Início
a
Acrescenta
NÃO
SIM
CRIA
OK
Fim
r+
Leitura/
Escrita
SIM
SIM
NULL
Permite Alteração
Início
W+
Leitura/
Escrita
SIM
SIM
CRIA
ReCRIA
Início
a+
Leitura/
Escrita
SIM
SIM
CRIA
Permite Acréscimo
Fim
Retirada do livro de DAMAS, L, p. 232-233
 
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Trecho de Abertura de um Arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Trecho de Abertura de um Arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Trecho de Abertura de um Arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Função que fecha um arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Função que fecha um arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Função que fecha um arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Função que detecta o fim do arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Função que detecta o fim do arquivo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Função que detecta o fim do arquivo
Trecho de repetição controlado por feof()
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Função que detecta o fim do arquivo
Trecho de repetição controlado por feof()
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Funções para gravar ou ler um caracter
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Funções para gravar ou ler um caracter
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Funções para gravar ou ler um caracter
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
#include<stdio.h>
#include<stdlib.h>
int main ()
{ char caracter; FILE *arq;
 if (( arq = fopen("texto.txt", "a")) == NULL)
 printf("\nArquivo NAO pode ser aberto\n");
 else
 {
 printf("\nDigite o texto e, para finalizar, ");
 printf("enter e CTRL Z/Windows(CTRL D/LINUX)\n");
 caracter = getchar();
 while (!feof(stdin)) 
 { fputc(caracter, arq); caracter = getchar(); }
 fclose(arq);
 } 
 printf("\n\n"); system("pause");
} 
Gravando caracter
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
#include<stdio.h>
#include<stdlib.h>
int main ()
{ char caracter; FILE *arq;
 if (( arq = fopen("texto.txt", "a")) == NULL)
 printf("\nArquivo NAO pode ser aberto\n");
 else
 {
 printf("\nDigite o texto e, para finalizar, ");
 printf("enter CTRL Z enter/ Windows(CTRL D/LINUX)\n“ ); 
 caracter = getchar(); 
 while (!feof(stdin)) 
 { fputc(caracter, arq); caracter = getchar(); }
 fclose(arq);
 } 
 printf("\n\n"); system("pause"); } 
Gravando caracter
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
#include<stdio.h>
#include<stdlib.h>
int main ()
{ 
 char caracter; FILE *arq;
 if (( arq = fopen("texto.txt", "r")) == NULL)
 printf("\nArquivo NAO pode ser aberto\n");
 else
 {
 printf("\n**O texto**\n");
 caracter = fgetc(arq);
 while ( !feof(arq) )
 { putchar(caracter); caracter = fgetc(arq); }
 fclose(arq);
 } 
 printf("\n\n"); system("pause");
} 
Lendo caracter
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
#include<stdio.h>
#include<stdlib.h>
int main ()
{ 
 char caracter; FILE *arq;
 if (( arq = fopen("texto.txt", "r")) == NULL)
 printf("\nArquivo NAO pode ser aberto\n");
 else
 {
 printf("\n**O texto**\n");
 caracter = fgetc(arq);
 while ( !feof(arq) )
 { putchar(caracter); caracter = fgetc(arq); }
 fclose(arq);
 } 
 printf("\n\n"); system("pause");
} 
Lendo caracter
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Funções para gravar ou ler uma linha
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Funções para gravar ou ler uma linha
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Funções para gravar ou ler uma linha
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main()
{ 
 FILE *fp; char s[80];
 fp=fopen("nomeIdade.txt","a");
 if (fp == NULL) 
 printf("\nArquivo NAO pode ser aberto\n"); 
 else
 {
 printf("\nNome Idade ou # para sair: ");
 while(strcmp(fgets(s,80,stdin),"#\n")!=0)
 fputs(s,fp);
 fclose(fp);
 } 
 system("pause");
} 
Gravando linha
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main()
{ 
 FILE *fp; char s[80];
 fp=fopen("nomeIdade.txt","a");
 if (fp == NULL) 
 printf("\nArquivo NAO pode ser aberto\n"); 
 else
 {
 printf("\nNome Idade ou # para sair: ");
 while(strcmp(fgets(s,80,stdin),"#\n")!=0)
 fputs(s,fp);
 fclose(fp);
 } 
 system("pause");} 
Gravando linha
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
#include <stdio.h>
#include <stdlib.h>
int main()
{
 FILE *fp; char s[80];
 fp=fopen("nomeIdade.txt","r"); 
 if (fp == NULL) 
 printf("\nArquivo NAO pode ser aberto\n");
 else
 {
 printf("\nNome/Idade\n");
 while(fgets(s,80,fp) !=NULL)
 printf("%s",s);
 fclose(fp);
 } 
 system("pause"); 
} 
Lendo linha
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
#include <stdio.h>
#include <stdlib.h>
int main()
{
 FILE *fp; char s[80];
 fp=fopen("nomeIdade.txt","r"); 
 if (fp == NULL) 
 printf("\nArquivo NAO pode ser aberto\n");
 else
 {
 printf("\nNome/Idade\n");
 while(fgets(s,80,fp) !=NULL)
 printf("%s",s);
 fclose(fp);
 } 
 system("pause"); 
} 
Lendo linha
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Funções para gravação e leitura formatadas
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Funções para gravação e leitura formatadas
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Funções para gravação e leitura formatadas
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Função para leitura formatada
Alternada com
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Alternada com
X
Função para leitura formatada
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Sugestão
Função para leitura formatada
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Ler total de nomes e notas e depois, ler nome e notas de um arquivo notas.txt .
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main ()
{
 FILE *arq;
 char linha[80], nomeArq[30], nome[35];
 int numAl, x;
 float nota1, nota2, media;
 printf("\nNome do arquivo? ");/*notas.txt*/
 scanf("%s", nomeArq);
 if( (arq = fopen(nomeArq, "r"))==NULL)
 printf("Erro na abertura do arquivo.");
 
Nome e duas notas
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
else
{
 fgets(linha, 80, arq);
 sscanf(linha, "%d", &numAl);
 for (x = 0; x < numAl; x++)
 {
 fgets(nome, 35, arq);
 fgets(linha, 80, arq); 
 sscanf(linha, "%f %f", &nota1, &nota2);
 media=(nota1+nota2)/2;
 printf("\n%d %s%.2f\t%.2f\t%.2f\n",x+1,nome, 
 nota1, nota2, media);
 }
 fclose(arq);
 } 
 printf("\n\n"); system("pause"); return 0;
}
Nome e duas notas
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
O exemplo da mercearia – Trecho Consultar
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
main()
{
 FILE *fp;
 char s[80], nomeArq[20], nomeProc[15], n[15]="";
 int x; 
 printf("\nNome do arquivo sem espaco: ");
 scanf("%s", nomeArq); 
 fp=fopen(nomeArq,"r"); 
 if( fp == NULL)
 printf("\nArquivo NAO pode ser aberto\n");
 
Mercearia
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
 else
 {
 printf("\nPrimeiro Nome: ");
 scanf("%s", nomeProc);
 while(fgets(s,80,fp) != NULL)
 { 
 for(x=0; x<strlen(nomeProc); x++)
 { n[x]=s[x];
 nomeProc[x]=toupper(nomeProc[x]);
 }
 if(strcmp(n, nomeProc)==0)
 printf("%s",s);
 }
 fclose(fp);
 } 
 system("pause"); } 
Mercearia
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Vamos ao Bate Pronto
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
1) Qual o modo de abertura para ler e gravar, permitindo alteração?
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
R: rb+
1) Qual o modo de abertura para ler e gravar, permitindo alteração?
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
R: rb+
1) Qual o modo de abertura para ler e gravar, permitindo alteração?
2) Qual a diferença entre os modos de abertura ab e ab+?
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
R: rb+
1) Qual o modo de abertura para ler e gravar, permitindo alteração?
2) Qual a diferença entre os modos de abertura ab e ab+?
R: Ambos acrescentam ao final, mas ab Não permite leitura
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
R: rb+
1) Qual o modo de abertura para ler e gravar, permitindo alteração?
2) Qual a diferença entre os modos de abertura ab e ab+?
R: Ambos acrescentam ao final, mas ab Não permite leitura
3) Qual a função que grava um caracter?
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
R: rb+
1) Qual o modo de abertura para ler e gravar, permitindo alteração?
2) Qual a diferença entre os modos de abertura ab e ab+?
R: Ambos acrescentam ao final, mas ab Não permite leitura
3) Qual a função que grava um caracter?
R: fputc()
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
4) Qual a função que lê dados formatados de um arquivo?
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
R: fscanf()
4) Qual a função que lê dados formatados de um arquivo?
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
R: fscanf()
5) Qual a função que lê dados formatados de um vetor de char?
4) Qual a função que lê dados formatados de um arquivo?
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
R: fscanf()
5) Qual a função que lê dados formatados de um vetor de char?
4) Qual a função que lê dados formatados de um arquivo?
R: sscanf()
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
R: fscanf()
5) Qual a função que lê dados formatados de um vetor de char?
4) Qual a função que lê dados formatados de um arquivo?
R: sscanf()
6) Qual a função que detecta o fim de um arquivo?
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
R: fscanf()
5) Qual a função que lê dados formatados de um vetor de char?
4) Qual a função que lê dados formatados de um arquivo?
R: sscanf()
6) Qual a função que detecta o fim de um arquivo?
R: feof()
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
7) Qual o significado de NULL?
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
R: É uma constante definida em stdio.h, retornada quando não se consegue abrir um arquivo externo por algum motivo.
7) Qual o significado de NULL?
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
R: É uma constante definida em stdio.h, retornada quando não se consegue abrir um arquivo externo por algum motivo.
7) Qual o significado de NULL?
8) Como se finaliza uma repetição para a entrada via teclado de caracteres?
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
R: É uma constante definida em stdio.h, retornada quando não se consegue abrir um arquivo externo por
algum motivo.
7) Qual o significado de NULL?
8) Como se finaliza uma repetição para a entrada via teclado de caracteres?
R: Após digitar enter para o último dado válido, pressione as teclas CTRL e Z, seguida de ENTER.
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I
Resumindo
Armazenando para preservar - 1a parte– Aula 9
LINGUAGEM DE PROGRAMAÇÃO I

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais