Alocação Dinâmica de Memória - Exercício Escreva um programa em C que manipule um vetor de inteiros não nulos alocado dinamicamente.
|
|
- Daniel de Vieira Soares
- 6 Há anos
- Visualizações:
Transcrição
1 1 Alocação Dinâmica de Memória - Exercício Escreva um programa em C que manipule um vetor de inteiros não nulos alocado dinamicamente. O programa recebe inteiros, através da entrada padrão, e os insere no vetor. A cada inteiro que é inserido a área de memória necessária para armazenar um inteiro é incrementada ao número de bytes necessários para armazenar o vetor. O vetor não ocupa memória inicialmente. Quando o usuário entrar com o inteiro 0 (zero), o programa será finalizado e o mesmo não pertencerá ao vetor. Após o processo de inserção o vetor deve ser impresso na saída padrão. Libere a memória utilizada antes do final do processamento.
2 Alocação Dinâmica de Memória - Resposta #include <stdio.h> #include <stdlib.h> main () { int *vetor=null, num_elementos=0, num; do { printf ("\nentre com o número inteiro que deseja inserir no vetor (entre com zero para finalizar o programa): "); scanf("%d",&num); 2
3 } if (num) { num_elementos++; vetor =(int*)realloc(vetor, num_elementos*sizeof(int)); if (!vetor) { printf ( \nerro!\n ); exit (1); } vetor[num_elementos-1]=num; } }while(num); printf("\nos elementos do vetor são:"); for (;num<num_elementos;num++) printf("\no elemento %d do vetor eh %d", num+1, *(vetor+num)); free(vetor); 3
4 Alocação Dinâmica de Memória - Exercício Escreva um programa em C que manipule vetores de inteiros não nulos alocados dinamicamente. O programa recebe inteiros não nulos, através da entrada padrão, e os insere no vetor. A cada inteiro que é inserido a área de memória necessária para armazenar um inteiro é incrementada ao número de bytes necessários para armazenar o vetor. Um vetor não ocupa memória inicialmente. Quando ocorre o fornecimento do inteiro 0 (zero), o programa percebe que o mesmo não pertence ao vetor e que o vetor já teve todos os valores de seus elementos fornecidos. 4
5 Alocação Dinâmica de Memória - Exercício O programa então apresenta o vetor na saída padrão, com layout adequado, e continua a leitura de valores para outro vetor, procedendo da mesma forma. O fornecimento de um vetor sem nenhum elemento indica que o programa deve finalizar seu processamento. Após a apresentação de cada vetor na saída padrão a memória alocada dinamicamente para armazená-lo deve ser liberada. Obs.: As entradas não precisão ser validadas. 5
6 Alocação Dinâmica de Memória - Exercício Exemplo de entrada: Exemplo de Saída: 8 Vetor = { 8, 15, 2, 7, 34 } 15 Vetor = { 3, 9 }
7 Manipulação de Arquivos Exercício: Com o que vimos até o momento sobre manipulação de arquivos. Construa uma função em C que possua a capacidade de escrever uma string em um arquivo texto. Escreva um programa que se utiliza adequadamente da função que você implementou. 9
8 10 #include <stdio.h> void putstrinfile (FILE *, char*); int main() { FILE *fp; char string[100]; int i; fp = fopen("arquivo.txt","w"); if(!fp) } { printf( "Erro na abertura do arquivo"); exit(1); } printf("entre com a string a ser gravada no arquivo:"); scanf("%[^\n]", string); putstrinfile (fp, string) ; fclose(fp); return 0;
9 11 void putstrinfile (FILE *fp, char* string) { int i; for(i=0; string[i]; i++) putc(string[i], fp); }
10 - getc Manipulação de Arquivos Seu protótipo é: int getc (FILE *fp); A função retorna um caractere lido do arquivo apontado por fp. OBS.: Equivalente à fgetc(). Exercício: Construa um função em C que possua a capacidade de ler e apresentar na saída padrão uma string contida em um arquivo texto. 12
11 13 void get_string(file *fp) { int c; while ((c = getc(fp))!= EOF) printf("%c", (char)c); }
12 Manipulação de Arquivos - Arquivos pré-definidos Quando se começa a execução de um programa, o sistema automaticamente abre alguns arquivos pré-definidos: stdin: dispositivo de entrada padrão (geralmente o teclado); stdout: dispositivo de saída padrão (geralmente o vídeo); stderr: dispositivo de saída de erro padrão (geralmente o vídeo); stdaux: dispositivo de saída auxiliar (em muitos sistemas, associado à porta serial); stdprn : dispositivo de impressão padrão (em muitos sistemas, associado à porta paralela). 14
13 15 Manipulação de Arquivos Cada uma destas constantes pode ser utilizada como um ponteiro para FILE, para acessar os periféricos associados a eles. Desta maneira, pode-se, por exemplo, usar: char ch = (char)getc(stdin); para efetuar a leitura de um caractere a partir do teclado, ou: putc(ch, stdout); para imprimir o mesmo no monitor.
14 16 Manipulação de Arquivos Com base no que vimos, podemos agora entender melhor o processo de leitura de valores fornecidos través da entrada padrão. Sempre que nos utilizamos de uma função para leitura de valores através do teclado, estamos solicitando que seja efetuada uma leitura na stream (buffer) que representa o arquivo apontado por stdin. Quando não é encontrado algo na stream ocorre uma espera pelo fornecimento de valores através do teclado, ou melhor, ocorre uma espera por pressionamento(s) de tecla(s) no teclado.
15 17 Exemplo: Manipulação de Arquivos Com base no que foi discutido, podemos construir um programa que leia uma string fornecida pelo usuário, através da entrada padrão, e a retorne na saída padrão. Onde o comprimento máximo da string seja, por exemplo, vinte caracteres válidos. A identificação do final da string é caracterizada pelo pressionamento da tecla enter ou ao se atingir o limite de caracteres válidos.
16 #include <stdio.h> #define comp 20 main() { char str[comp+1],i=0; printf("\nentre com uma string: "); do { str[i++]=(char)getc(stdin); }while(str[i-1]!='\n' && i<comp); if(str[i-1]=='\n') str[i-1]='\0'; else str[i]='\0'; printf("\nstring fornecida: "); for(i=0;str[i];i++) putc(str[i],stdout); return 0; } 18
17 - fgets Manipulação de Arquivos Para se ler uma string num arquivo podemos usar fgets() cujo protótipo é: char *fgets (char *str, int tamanho,file *fp); A função lê a string até que um caractere de nova linha seja lido ou tamanho-1 caracteres tenham sido lidos. Se o caractere de nova linha ('\n') for lido, ele fará parte da string, o que não acontecia com gets. A string resultante sempre terminará com '\0' (por isto somente tamanho-1 caracteres, no máximo, serão lidos). 19
18 20 Manipulação de Arquivos A função fgets é semelhante à função gets(), porém, além dela poder fazer a leitura a partir de um arquivo de dados e incluir o caracter de nova linha na string, ela ainda especifica o tamanho máximo da string de entrada. Como vimos, a função gets() não tinha este controle, o que poderia acarretar erros de "estouro de buffer". Portanto, levando em conta que o ponteiro fp pode ser substituído por stdin, como vimos anteriormente, uma alternativa ao uso de gets é usar a seguinte construção: int tamanho=11; char str[11]; fgets (str, tamanho, stdin); Porém, deve-se tomar cuidado com a, provável, presença do \n na string lida.
19 Exemplo: Manipulação de Arquivos O programa a seguir recebe o nome de um arquivo binário, fornecido pelo usuário, através da entrada padrão, e efetua a abertura do mesmo para uma leitura. O nome do arquivo fornecido possuirá no máximo 20 caracteres. 21
20 22 #include<stdio.h> main() { char nome[21]; FILE *p; int i; fgets(nome,21,stdin); for(i=0;nome[i] && nome[i]!='\n';i++); nome[i]='\0'; if(!(p=fopen(nome,"rb"))) { printf("\nerro!\nimpossivel abrir o arquivo para leitura!"); exit(1); } /*... */ fclose(p); }
21 Manipulação de Arquivos - fputs A função fputs() escreve uma string num arquivo. Seu protótipo é: char *fputs (char *str, FILE *fp); 23
22 - fflush Cujo protótipo é: Manipulação de Arquivos int fflush (FILE *fp); A função fflush() esvazia o buffer do arquivo referenciado pelo ponteiro passado como argumento, se o arquivo passado for um arquivo de saída o conteúdo do buffer é gravado no mesmo. Se a função for chamada sem parâmetros, os buffers de todos os arquivos abertos para saída serão descarregados. A função devolve 0 para indicar sucesso, caso contrário devolve EOF. 24
23 Manipulação de Arquivos 25 - ferror A função ferror() determina se uma operação sobre um arquivo produziu um erro. Seu protótipo é: int ferror (FILE *fp); A função ferror() retorna um inteiro não nulo se ocorreu um erro durante a última operação realizada no arquivo; caso contrário retorna zero.
24 26 /* Exemplo da utilização das funções fputs(), fflush() e ferror() */ #include <stdio.h> int main() { FILE *pf; char string[100]; if(!(pf = fopen("arquivo.txt","wb"))) exit(1); do { printf("\ndigite uma nova string. Para terminar, digite <enter>: "); fgets(string,100,stdin); fputs(string, pf); if(ferror(pf)) exit(1); } while (strlen(string) > 1); fflush (pf);... fclose(pf); return 0; }
25 27 Manipulação de Arquivos Exercício: Construa um programa em C que receba através da linha de comando, com a qual o programa foi executado, o nome de um arquivo texto existente, o qual deve ser analisado, afim de se determinar quantas linhas o mesmo possui, após a referida analise, o programa deve incluir uma nova linha no final do arquivo contendo apenas um inteiro representando o número de linhas que o mesmo possuía. Caso ocorra algum erro durante o processamento, o mesmo deve ser identificado através da exibição de uma mensagem na saída padrão. Observação: o número máximo de caracteres que cada linha contém é 80. Mensagens de erro possíveis: Erro na abertura do arquivo! Erro na leitura do arquivo! Erro na escrita no arquivo! Erro na gravação do arquivo! Erro! Execute: nome_prog nome_arq
26 Exemplo do conteúdo de um arquivo de entrada: Testando o programa. Vai funcionar? Espero que sim. Bom, vamos ver... Exemplo do conteúdo do arquivo correspondente após processamento: Testando o programa. Vai funcionar? Espero que sim. Bom, vamos ver
27 Manipulação de Arquivos A linguagem de programação C apresenta uma grande lista de funções para manipulação de arquivos que não foram trabalhadas na disciplina, como, por exemplo: - unsigned int fread (void *buffer, int numero_de_bytes, int count, FILE *fp); a qual lê um bloco de dados em um determinado arquivo; 31 - unsigned int fwrite(void *buffer, int numero_de_bytes, int count, FILE *fp); a qual escreve um bloco de dados em um determinado arquivo;
28 Manipulação de Arquivos - int fseek (FILE *fp, long int numbytes, int origem); a qual move a posição corrente de leitura ou escrita de um arquivo, de um valor especificado, a partir de um ponto especificado. - void rewind (FILE *fp); a qual retorna a posição corrente do arquivo para o início; - int remove (char *nome_do_arquivo); a qual apaga um arquivo especificado, retornando zero caso seja bem sucedida; caso contrário, retorna um não nulo. 32
29 Programa make Já vimos alguns conceitos associados ao processo de compilação. Porém, dispersos entre os demais conteúdos. Vamos relembrá-los agora: - Definição de macros, quando vimos o #define; - Diretivas para compilação, quando vimos o -o e o -lm; - Arquivos de cabeçalho, quando vimos os arquivos.h; - Divisão do projeto em arquivos separados, quando trabalhamos a definição de bibliotecas de ligação estática. 33
30 Programa make O último tópico de nosso conteúdo programático é: Compilação separada com o uso do programa make. O make é uma ferramenta que controla a geração de executáveis e outros arquivos não- fonte de um programa a partir de arquivos fonte do programa. O make recebe o seu conhecimento sobre como construir o seu programa a partir de um arquivo chamado makefile, que lista cada um dos arquivos não-fonte e como gerá-los de outros arquivos. 34
31 Programa make É interessante que o programador ao escrever um programa complexo, composto por vários arquivos fonte, escreva um makefile para ele, de modo que seja possível utilizar o make para construir e, também, instalar o programa. Mais sobre make pode ser encontrado no link 35
32 FIM! 36
Manipulação de Arquivos
Manipulação de Arquivos Devemos iniciar nossa explanação pelo conceito de arquivo: Arquivo é uma unidade lógica utilizada para armazenar dados em disco ou em qualquer outro dispositivo externo de armazenamento.
Leia maisArquivos em C Parte 2
Universidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação Arquivos em C Parte 2 Profa Rosana Braga Material preparado pela profa Silvana Maria Affonso de Lara 1º semestre de
Leia maisUniversidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação. Arquivos em C
Universidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação Arquivos em C 1 Material preparado pela profa Silvana Maria Affonso de Lara 2º semestre de 2010 ROTEIRO DA AULA Arquivos
Leia maisManipulação de Arquivos
394 Podemos escrever e ler blocos de dados em um determinado arquivo. Para tanto, a linguagem C, disponibiliza as funções fread() e fwrite(). - fread Manipulação de Arquivos O protótipo de fread() é: unsigned
Leia maisLINGUAGEM C: ARQUIVOS
LINGUAGEM C: ARQUIVOS Prof. André Backes ARQUIVOS Por que usar arquivos? Permitem armazenar grande quantidade de informação; Persistência dos dados (disco); Acesso aos dados poder ser não seqüencial; Acesso
Leia maisQuestão 1. Nome para o arquivo fonte questao1.c
Questão 1 Nome para o arquivo fonte questao1.c Construa um programa, na linguagem de programação C, que receba através da entrada padrão um número natural, o qual indicará quantas operações de divisão
Leia maisLINGUAGEM C: ARQUIVOS
LINGUAGEM C: ARQUIVOS Prof. André Backes Arquivos 2 Por que usar arquivos? Permitem armazenar grande quantidade de informação; Persistência dos dados (disco); Acesso aos dados poder ser não seqüencial;
Leia maisDepuração e Teste de programas C C Depuração e teste de programas C
Universidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação Depuração e Teste de programas C C Depuração e teste de programas C Profa Rosana Braga (adaptado de material do prof.
Leia maisLINGUAGEM C: ARRAYS DE CARACTERES: STRINGS
LINGUAGEM C: ARRAYS DE CARACTERES: STRINGS Prof. André Backes DEFINIÇÃO String Sequência de caracteres adjacentes na memória. Essa sequência de caracteres, que pode ser uma palavra ou frase Em outras palavras,
Leia maisCAP. IX - MANIPULAÇÃO DE ARQUIVOS Generalidades sobre Arquivos. 9.2 Abertura e Fechamento de Arquivos. Operações com arquivos:
CAP. IX - MANIPULAÇÃO DE ARQUIVOS 9.1 Generalidades sobre arquivos 9.2 Abertura e fechamento de arquivos 9.3 Arquivos textos e arquivos binários 9.4 Leitura e escrita em arquivos binários 9.5 Procura direta
Leia maisAlgoritmos e Estruturas de Dados II IEC013
Algoritmos e Estruturas de Dados II IEC013 Linguagem C - Arquivos - Prof. César Melo cavmelo@dcc.ufam.edu.br Slides preparados pelo Prof. Leandro Galvão galvao@dcc.ufam.edu.br Conceitos iniciais Um arquivo
Leia maisManipulação de Arquivos
Lucas Ferrari de Oliveira Professor Adjunto Universidade Federal do Paraná Manipulação de Arquivos Linguagem de Programação Estruturado Sumário Introdução; E/S ANSI Versus E/S UNIX; E/S em C Versus E/S
Leia maisApêndice B. Cadeias de Caracteres (Strings)
Apêndice B. Cadeias de Caracteres (Strings) Até agora, quando desejávamos indicar o número de elementos existentes em um vetor qualquer, utilizávamos uma variável inteira, digamos tam, para armazenar tal
Leia maisLinguagem C. Armazenamento de Dados em Arquivos - Continuação
Linguagem C Armazenamento de Dados em Arquivos - Continuação Arquivos Binários Comandos para gravação e leitura de arquivos (revisão): FILE *arquivo; arquivo = fopen( nome, modo ); fwrite (&variavel, sizeof
Leia maisOutline. 33. Manipulação de arquivos DIM
Outline 33. Manipulação de arquivos DIM031 015.1 Leitura e escrita 3 s DIM031 33. Manipulação de arquivos 015.1 1 / 4 DIM031 33. Manipulação de arquivos 015.1 / 4 Arquivo = entidade de armazenamento de
Leia maisLeitura de Arquivos. Prof. Fabrício Olivetti de França
Leitura de Arquivos Prof. Fabrício Olivetti de França Leitura de Arquivos Na linguagem C temos um tipo especial chamado FILE para trabalhar com arquivos. Abrindo e fechando um arquivo Para abrir um arquivo
Leia maisMétodos Computacionais. Arquivos
Métodos Computacionais Arquivos Arquivos Um arquivo representa um elemento de informação armazenado em memória secundária (disco) Características: Informações são persistidas Atribui-se nomes aos elementos
Leia maisVetores e Strings. printf ("\na string %s nao esta contida no vetor de %s", string, "strings.\n");
Vetores e Strings #include main () char strings [5][100],string [100]; int count,count2; for (count=0;count
Leia maisLinguagem C: Arquivo-Texto
Prof. Paulo R. S. L. Coelho paulo@facom.ufu.br Faculdade de Computação Universidade Federal de Uberlândia GEQ007 Organização 1 Introdução em C 2 3 Organização Introdução em C 1 Introdução em C 2 3 Introdução
Leia maisProgramação. MEAer e LEE. Manipulação de ficheiros de texto. Bertinho Andrade da Costa. Instituto Superior Técnico. 2010/2011 1º Semestre
Programação MEAer e LEE Bertinho Andrade da Costa 2010/2011 1º Semestre Instituto Superior Técnico Manipulação de ficheiros de texto Programação 2010/2011 IST-DEEC Manipulação de Ficheiros 1 Sumário Ficheiros
Leia maisAula 9 Oficina de Programação Strings. Profa. Elaine Faria UFU
Aula 9 Oficina de Programação Strings Profa. Elaine Faria UFU - 2017 String Cadeia de caracteres (ou String) É uma seqüência de letras e símbolos, na qual os símbolos podem ser espaços em branco, dígitos
Leia maisLinguagem C: Introdução
Linguagem C: Introdução Linguagem C É uma Linguagem de programação genérica que é utilizada para a criação de programas diversos como: Processadores de texto Planilhas eletrônicas Sistemas operacionais
Leia maisLinguagem C Ficheiros Compilação Separada
Linguagem C Ficheiros Compilação Separada typedef definição de tipos Apontadores para estruturas Ficheiros na bibiloteca standard do C Compilação Separada Definição de novos tipos em C É possível definir
Leia maisCaracteres e Cadeias de Caracteres
Caracteres e Cadeias de Caracteres INF1005 Programação I Prof. Hélio Lopes lopes@inf.puc-rio.br sala 408 RDC 1 caracteres e cadeias de caracteres tópicos caracteres cadeias de caracteres (strings) vetor
Leia maisLeitura Segura de Strings
Leitura Segura de Strings As funções da biblioteca padrão de C que podem ser usadas para leitura de strings não são suficientemente adequadas para esta finalidade básica. Nesta seção, serão descritos alguns
Leia mais4,0 pontos), exclusão de registro e exclusão completa de dados; 3. A nota final do trabalho terá um peso 4.
Seminário interdisciplinar (Programação Estruturada + Estrutura de Dados) OBJETIVO: 1. Criar um cadastro simples, e armazenar os dados em um arquivotexto ou binário (2,0 pontos); 2. Realizar as operações
Leia mais1 Arquivos em C. CEFETES Serra - Programação II Mateus Costa Notas de Aula - Arquivos
CEFETES Serra - Programação II Mateus Costa Notas de Aula - Arquivos 1 Arquivos em C O objetivo deste capítulo e permitir a construção de programas que armazenem dados de forma permanente em dispositivos
Leia maisProgramação: Vetores
Programação de Computadores I Aula 09 Programação: Vetores José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/62 Motivação Problema Faça um programa que leia
Leia maisComputação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Segunda Prova - 14 de junho de 2017
Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Segunda Prova - 14 de junho de 2017 1. (30 Pontos) Bolas de futebol são muito fáceis de transportar, já que elas saem das fábricas vazias
Leia maisManipulação de Arquivos
Manipulação de Arquivos Estrutura de Dados II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Tipo
Leia mais1 Escrita de Arquivos Binário
Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Aula prática sobre arquivos binários 1 Escrita de Arquivos Binário Esta aula será sobre escrita e leitura de arquivos binários. Nesta
Leia maisEstrutura de Dados. Cadeia de Caracteres. Roberto Araujo Ago/2013
Estrutura de Dados Cadeia de Caracteres Roberto Araujo Ago/2013 Estrutura de Dados O que é uma estrutura de dados? É um arranjo pré-definido de um ou mais pedaços de dados Ex: Ex: Os carateres 'u', 'v',
Leia maisComandos de entrada. e saída. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada.
e saída Biblioteca stdio.h Comandos Função scanf() Função gets() Função getchar() Material cedido pelo prof. Daniel Callegari scanf() Rotina de entrada que lê todos os tipos de dados. Protótipo: int scanf(const
Leia maisExercício 1. Tabela 1: Cadastro de usuários, senhas e privilégios (exemplo). Login Senha Privilégio Armamento
1/5 Exercício 1 Um sistema de segurança militar, usado num submarino nuclear, controla o acesso de usuários a três subsistemas (armamento, navegação e comunicações) através da digitação do login do usuário
Leia maisSequência de informações binárias armazenadas num dispositivo de armazenamento permanente. Em geral os bits são agrupados em grupos de 8 (1 byte)
Arquivos Apesar da organização física sequencial dos bytes no arquivo, podemos em cima desta organização básica implementar outros tipos de estruturação para uma arquivo Arquivo Sequência de informações
Leia maisLinguagem C Controle do Fluxo de Execução. Lógica de Programação
Linguagem C Controle do Fluxo de Execução Lógica de Programação Caro(a) aluno(a), Aqui começaremos a escrever os nossos primeiros programas em uma Linguagem de Programação. Divirta-se!!! Estrutura Seqüencial
Leia maisAmbiente de desenvolvimento
Linguagem C Ambiente de desenvolvimento Um programa em C passa por seis fases até a execução: 1) Edição 2) Pré-processamento 3) Compilação 4) Linking 5) Carregamento 6) Execução Etapa 1: Criação do programa
Leia maisLinguagem de Programação I Vetores e Strings. Thiago Leite Francisco Barretto
Linguagem de Programação I Vetores e Strings Thiago Leite Francisco Barretto Vetores são matrizes unidimensionais; Uma matriz é uma coleção de
Leia maisEstruturas de Dados. Módulo 15 - Arquivos. 2/6/2005 (c) Dept. Informática - PUC-Rio 1
Estruturas de Dados Módulo 15 - Arquivos 2/6/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004)
Leia maisProgramação de Computadores I Arquivos na Linguagem C PROFESSORA CINTIA CAETANO
Programação de Computadores I Arquivos na Linguagem C PROFESSORA CINTIA CAETANO Introdução As informações que os programas utilizam são perdidas quando eles são finalizados ou quando o computador é desligado.
Leia maisMESMO QUE ESTAS VARIÁVEIS TENHAM NOME IDÊNTICOS
Funções As funções são blocos de instruções que facilitam o entendimento do código. Porque usar funções? Para permitir o reaproveitamento de código já construído (por você ou por outros programadores);
Leia maisLinguagens de Programação I
Linguagens de Programação I Tema # 4 Operadores em C Susana M Iglesias FUNÇÕES ENTRADA-SAÍDA I/O printf(), utilizada para enviar dados ao dispositivo de saída padrão (stdout), scanf(), utilizada para ler
Leia maisLinguagem C (repetição)
Linguagem C (repetição) André Tavares da Silva andre.silva@udesc.br Exercício Escrever um programa que conte (mostre na tela) os números de 1 a 100. Comandos aprendidos até o momento: printf, scanf, getchar,
Leia maisLinguagem C arquivos. IF61A/IF71A - Computação 1 Prof. Leonelo Almeida. Universidade Tecnológica Federal do Paraná
Linguagem C arquivos IF61A/IF71A - Computação 1 Prof. Leonelo Almeida Universidade Tecnológica Federal do Paraná Até agora... Introdução à linguagem C... Vetores Matrizes Funções Recursão Registros Ponteiros
Leia maisModulo 12: alocação dinâmica de memória
PROGRAMAÇÃO DE COMPUTADORES V - TCC- 00.323 Modulo 12: alocação dinâmica de memória Aura - Erick aconci@ic.uff.br, erickr@id.uff.br Roteiro porque e como utilizar a alocação dinâmica funções: malloc (
Leia maisIntrodução à Programação. Introdução a Linguagem C. Prof. José Honorato F. Nunes
Introdução à Programação Introdução a Linguagem C Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br Resumo da aula Introdução Variáveis Tipos de dados Operadores e Expressões: Operadores
Leia maisMódulo 5 Vetores e Alocação Dinâmica
Estruturas de Dados Módulo 5 Vetores e Alocação Dinâmica 1/9/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora
Leia mais4 MDP. void média e dp(int a[],int n,float em,float ed) 7. Variáveis auxiliares 7. Faça ed igual ao desvio padrão 6 }
1 MDP INTRODUCÃO 1 1. Introducão. Esta é uma demonstração do sistema CWEB (veja http://www.ime.usp.br/~pf/ CWEB/) de Knuth e Levy. Um programa CWEB, como este que você está lendo, é uma espécie de jogo
Leia maisAlocação Dinâmica em C
Universidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação Alocação Dinâmica em C Profa Rosana Braga Adaptado de material preparado pela profa Silvana Maria Affonso de Lara
Leia maisINF1007: Programação 2. 2 Alocação Dinâmica. 17/02/2014 (c) Dept. Informática - PUC-Rio 1
INF1007: Programação 2 2 Alocação Dinâmica 17/02/2014 (c) Dept. Informática - PUC-Rio 1 Tópicos Alocação dinâmica Vetores locais e funções 17/02/2014 (c) Dept. Informática - PUC-Rio 2 Alocação Dinâmica
Leia maisCentro Universitário Franciscano Curso de Sistemas de Informação Disciplina de algoritmos e programação II. Ponteiros
Centro Universitário Franciscano Curso de Sistemas de Informação Disciplina de algoritmos e programação II Ponteiros Profa.: Simone Ceolin Slides (Prof.Tiago Rios da Rocha) Primeiro Semestre 2011 Sumário
Leia maisLinguagem de Programação C. Arquivos Binários
Arquivos Binários Cristiano Lehrer Motivação Variáveis int e float tem tamanho fixo em memória: int 2 bytes. float 4 bytes. A representação em texto dos números precisa de uma quantidade variável de caracteres:
Leia maisEstruturas de Dados. Introdução Definição de Ponteiros Declaração de Ponteiros em C Manipulação de Ponteiros em C
Estruturas de Dados Revisão de Ponteiros Prof. Ricardo J. G. B. Campello Sumário Introdução Definição de Ponteiros Declaração de Ponteiros em C Manipulação de Ponteiros em C Operações Ponteiros e Arranjos
Leia maisVetores e Strings. 4. Funções Básicas para manipulação de Strings. A função gets() lê uma string do teclado. Sua forma geral é:
4. Funções Básicas para manipulação de Strings - gets A função gets() lê uma string do teclado. Sua forma geral é: gets (nome_da_string); 187 - gets (continuação) Exemplo: Vetores e Strings 188 #include
Leia maisExercícios Repetição
Curso de Engenharia de Controle e Automação Disciplina: Informática para a Automação Professor: Marcelo Cendron Exercícios Repetição 1.1 8.3 Exercícios 1. Faça um programa utilizando o comando while, que
Leia maisINF 1007 Programação II
INF 1007 Programação II Aula 04 Alocação Dinâmica Edirlei Soares de Lima Vetores - Declaração e Inicialização Declaração de um vetor: int meu_vetor[10]; Reserva um espaço de memória
Leia maisStrings. Introdução. Definição de strings. Criação/Declaração de strings. Inicialização de strings. Manipulação de strings. Exemplos.
Introdução Definição de strings. Criação/Declaração de strings. Inicialização de strings. Manipulação de strings. Exemplos. 1 definições Uma string é uma sequência, um conjunto, ou uma cadeia de caracteres.
Leia maisMétodos Computacionais
Métodos Computacionais Objetivos da Disciplina e Introdução a Linguagem C Construções Básicas Objetivos da Disciplina Objetivo Geral Discutir técnicas de programação e estruturação de dados para o desenvolvimento
Leia maisComputação 2. Aula 3. Diego Addan Vetores de caracteres (strings)
Computação 2 Aula 3 Vetores de caracteres (strings) Diego Addan diegoaddan@gmail.com Vetor de caracteres (Strings) Uma cadeia de caracteres, mais conhecida como string, é uma seqüência de caracteres (letras
Leia maisElementos de programação em C
Elementos de programação em C Entrada e saída: teclado e monitor de vídeo Francisco A. C. Pinheiro, Elementos de Programação em C, Bookman, 2012. Visite os sítios do livro para obter material adicional:
Leia maisIntrodução à Linguagem C
Engenharia de CONTROLE e AUTOMAÇÃO Introdução à Linguagem C Aula 02 DPEE 1038 Estrutura de Dados para Automação Curso de Engenharia de Controle e Automação Universidade Federal de Santa Maria beltrame@mail.ufsm.br
Leia maisIntrodução a Programação de Jogos
Introdução a Programação de Jogos Aula 03 Introdução a Linguagem C Edirlei Soares de Lima Estrutura de um Programa C Inclusão de bibliotecas auxiliares: #include Definição
Leia maisINF1005: Programação 1. Arquivos. 02/05/10 (c) Paula Rodrigues 1
INF1005: Programação 1 Arquivos 02/05/10 (c) Paula Rodrigues 1 Tópicos Principais Motivação Abertura e fechamento de arquivos Leitura com fscanf Escrita com fprintf 08/03/10 (c) Paula Rodrigues 2 Motivação
Leia maisAula de Arquivos. Jesimar da Silva Arantes. Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo - São Carlos, SP
Aula de Arquivos Jesimar da Silva Arantes Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo - São Carlos, SP Estagiário PAE: Jesimar da Silva Arantes Professor: Claudio Fabiano
Leia maisUniversidade Federal de Uberlândia Faculdade de Computação. Linguagem C: ponteiros e alocação dinâmica
Universidade Federal de Uberlândia Faculdade de Computação Linguagem C: ponteiros e alocação dinâmica Prof. Renato Pimentel 1 Ponteiros 2 Prof. Renato Pimentel 1 Ponteiros: introdução Toda a informação
Leia maisCurso de Introdução à Liguagem de. Grupo PET-Tele. Universidade Federal Fluminense. July 16, 2012
urso de à urso de à Universidade Federal Fluminense July 16, 2012 Indrodução urso de à O é uma linguagem de programação criada por Dennis Ritchie, em 1972 e que continua a ser muito utilizada até os dias
Leia maisLinguagem C Princípios Básicos (parte 1)
Linguagem C Princípios Básicos (parte 1) Objetivos O principal objetivo deste artigo é explicar alguns conceitos fundamentais de programação em C. No final será implementado um programa envolvendo todos
Leia maisMétodos Computacionais. Vetores e Matrizes Dinâmicas
Métodos Computacionais Vetores e Matrizes Dinâmicas Vetores Um programa para o cálculo da média Média m n i= = 1 n x i Variância v n i= = 1 ( x i n m) 2 A forma mais simples de estruturar um conjunto de
Leia mais#include <stdio.h> void Swap (int *a,int *b) { int temp; temp=*a; *a=*b; *b=temp; } main () {
422 #include void Swap (int *a,int *b) int temp; temp=*a; *a=*b; *b=temp; main () int num1,num2; printf("\nentre com o primeiro valor: "); scanf ("%d",&num1); printf("\nentre com o segundo valor:
Leia maisExercícios Aula Prática XIV
Aula Prática XIV 33) Construa o código fonte de uma função em C que receba um número inteiro positivo, o qual representa a posição de um determinado termo na sequência de Fibonacci, a função deve retornar
Leia maisLinguagem de Programação. Thiago Leite Francisco Barretto
Linguagem de Programação Thiago Leite Francisco Barretto SCHILDT, H. C Completo e Total. 3ª Edição. São Paulo: Makron, 1997. Bibliografia Ementa
Leia maisO pré-processador executa transformações controladas no arquivo fonte antes da compilação. Os comandos (sentenças) sempre são iniciados por #.
O modificador static Se o modificador static for utilizado na declaração de uma variável local em uma função, essa variável não perderá seu valor entre chamadas à função. void rot1() { static int var1=0;
Leia maisModularização: Funções em C
Modularização: Funções em C Notas de Aula Prof. Francisco Rapchan www.geocities.com/chicorapchan Muitas vezes um problema grande pode ser resolvido mais facilmente se for dividido em pequenas partes. Tratar
Leia maisEntrad Entrada / Saíd a / Saída
Entrada / Saída Entrada e Saída em C Entrada e saída pelo console Funções getchar e putchar Retorna ou escreve na saída padrão 1 caracter Função puts Escreve uma cadeia de caracteres na saída padrão (gets
Leia maisMatrizes em C. Lucas Ferrari de Oliveira Professor Adjunto. Universidade Federal do Paraná
em C Lucas Ferrari de Oliveira Professor Adjunto Universidade Federal do Paraná Uma matriz é uma coleção de variáveis do mesmo tipo que é referenciada por um nome comum; Em C todas as matrizes consistem
Leia maissystem("pause"); //Envia comando para o sistema operacional solicitando parada de execução do programa } //limitador do corpo do programa
Atividade Prática no Ambiente Dev C++ Para as nossas atividades práticas vamos utilizar o ambiente de desenvolvimento da Linguagem C, Dev C++, ele é bastante fácil de utilizar e com muitos recursos. Segue
Leia maisAnhanguera Educacional S.A. Centro Universitário Ibero-Americano
O C++ foi inicialmente desenvolvido por Bjarne Stroustrup durante a década de 1980 com o objetivo de melhorar a linguagem de programação C, mantendo a compatibilidade com esta linguagem. Exemplos de Aplicações
Leia maisProgramação II. Vetores e Alocação Dinâmica. Bruno Feijó Dept. de Informática, PUC-Rio
Programação II Vetores e Alocação Dinâmica Bruno Feijó Dept. de Informática, PUC-Rio Vetores (arrays) Vetor: estrutura de dados definindo um conjunto enumerável Exemplo: v = vetor de inteiros com 10 elementos
Leia maisTipos Básicos. Operadores de Incremento e Decremento. Operador Sizeof. Estruturas de Dados Aula 2: Estruturas Estáticas
Tipos Básicos Quantos valores distintos podemos representar com o tipo char? Estruturas de Dados Aula 2: Estruturas Estáticas 03/03/2010 Operadores de Incremento e Decremento ++ e -- Incrementa ou decrementa
Leia maisArquivos em C. Notas de Aula. Prof. Francisco Rapchan
Arquivos em C Notas de Aula Prof. Francisco Rapchan www.geocities.com/chicorapchan Há várias definições para arquivos em computação. Uma das mais usadas é a de que um arquivo é um conjunto de registros
Leia maisLinguagem C Entrada/Saída (console)
Linguagem C Entrada/Saída (console) Objetivos Nos artigos anteriores foram utilizadas as funções scanf() e printf(), porém não entramos em maiores detalhes. Agora estudaremos essas e outras funções de
Leia maisEstruturas de Dados Aula 2: Estruturas Estáticas 02/03/2011
Estruturas de Dados Aula 2: Estruturas Estáticas 02/03/2011 Tipos Básicos Quantos valores distintos podemos representar com o tipo char? Operadores de Incremento e Decremento ++ e -- Incrementa ou decrementa
Leia maisMétodos Computacionais. Operadores, Expressões Aritméticas e Entrada/Saída de Dados
Métodos Computacionais Operadores, Expressões Aritméticas e Entrada/Saída de Dados Tópicos da Aula Hoje aprenderemos a escrever um programa em C que pode realizar cálculos Conceito de expressão Tipos de
Leia maisDisciplina de Algoritmos e Programação
Disciplina de Algoritmos e Programação Último Conteúdo Estruturas de condição Estrutura condicional simples Utilização da estrutura de condição if com expressões lógicas simples Utilização do comando if
Leia maisEstruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões.
1 Estruturas da linguagem C 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões. Identificadores Os identificadores seguem a duas regras: 1. Devem ser começados por letras
Leia maisCapítulo 6: Arquivos
Capítulo 6: Arquivos Waldemar Celes e Roberto Ierusalimschy 29 de Fevereiro de 2012 1 Funções de entrada e saída em arquivos Nos capítulos anteriores, desenvolvemos programas que capturam seus dados de
Leia mais6 Alguns conceitos e comandos em programação
6 Alguns conceitos e comandos em programação 6.1 Diretivas Diretivas são instruções que permitem ao programador efetuar algum tipo de modificação à compilação, sendo analisadas e executadas pelo pré-compilador,
Leia maisCláudio C. Rodrigues Faculdade da Computação - UFU
Cláudio C. Rodrigues Faculdade da Computação - UFU LINGUAGEM C 07: ARQUIVOS Trabalhando com arquivos O sistema de entrada e saída do ANSI C é composto por uma série de funções cujos protótipos estão reunidos
Leia maisAula 1 Apresentação do Curso
Departamento de Sistemas de Computação Universidade de São Paulo SSC 502 Laboratório de Introdução a Ciência de Computação I Aula 1 Apresentação do Curso Responsável Prof. Seiji Isotani (sisotani@icmc.usp.br)
Leia maisIntrodução a Linguagem C. Prof. Me. Hélio Esperidião
Introdução a Linguagem C Prof. Me. Hélio Esperidião Características de um programa De forma geral a maioria dos programas são compostos por dados de entrada, processamento e dados de saída. Entrada de
Leia maisINF 1620 P1-14/04/07 Questão 1 Nome:
INF 1620 P1-14/04/07 Questão 1 Considerando o critério de aprovação de uma disciplina que determina que um aluno está aprovado se a média ponderada de suas três provas for maior ou igual a 5.0, onde a
Leia maisSumário. Introdução à Ciência da Computação. Ponteiros em C. Introdução. Definição. Por quê ponteiros são importantes?
Introdução à Ciência da Computação Ponteiros em C Prof. Ricardo J. G. B. Campello Sumário Introdução Definição de Ponteiros Declaração de Ponteiros em C Manipulação de Ponteiros em C Operações Ponteiros
Leia maisVetores. e o programa deverá ler os valores separadamente:
Vetores Vetor é um tipo de dado usado para representar uma certa quantidade de variáveis de valores homogêneos (do mesmo tipo). Imagine o seguinte problema: calcular a média das notas da prova de 5 alunos.
Leia mais