UFPR · DELT · Contact
Exercicios a serem realizados nas aulas práticas
Slides: fundamentos de programação em linguagem C
  • Breve revisão da Linguagem C
  • C Programming Tutorial"


  • Exercícios sobre fundamentos de programação
    Utilize a linguagem C para implementar programas para os seguintes problemas: Estes exercícios foram planejados para treinar questões de fundamentos de programação.
    1. Escreva um programa que lê um número e indica se este número é divisível por 3. (solução: prog1.c)
    2. Escreva um programa que imprime os n primeiros termos de uma série aritimética. O usuário deve entrar com o valor de n, a razão e o termo inicial.(solução: prog2.c)
    3. Escreva um programa que lê um número e verifica se ele é ou não um número primo. (solução: prog3.c)
    4. Escreva um programa que lê um vetor de 10 inteiros e indica qual o índice do maior valor. (solução: prog4.c)
      1. Implemente o mesmo programa utilizando alocação dinâmica de memória. (solução: prog4.1.c)
    5. Escreva um programa que lê uma string e imprime de trás para frente. (solução: prog5.c)
      1. Implemente o mesmo programa utilizando alocação dinâmica de memória. (solução: prog5.1.c)
    6. Considere os métodos de criptografia de César e Cifras Polialfabéticas. (solução: prog6.c)
      1. Escreva um programa que criptografa uma string digitada pelo usuário utlizando o método de César. Neste programa, utilize uma função para realizar a criptografia. Os parâmetros da função devem ser um ponteiro para string a ser criptografada, um ponteiro para o resultado e o fator de rotação.
      2. Adicione ao programa uma função para criptografar uma string utilizando o método de cifras polialfabéticas. Os parâmetros da função devem ser um ponteiro para string a ser criptografada, um ponteiro para o resultado e um ponteiro para chave de criptografia.
      3. O programa deve rodar em linha de comando, com três argumentos: método de criptografia, string a ser criptografada e fator de rotação/chave de criptografia. O programa deve permitir a criptografia utilizando o método de césar e de cifras polialfabéticas.
    7. Considere um programa para implementar uma agenda telefônica.
      1. Parte 1. Utilize alocação estática de memória: (solução: prog7.1.c)
        1. Crie uma estrutura de dados para representar uma entrada na agenda, contendo nome, telefone e idade da pessoa.
        2. Desenvolva funções para incluir, excluir e pesquisar nomes. Os dados devem ser representados em um vetor.
        3. Desenvolva funções para ler e gravar os dados em um arquivo. Exemplos com uso de arquivo utilizados na aula: arq.c arq1.c, arq2.c, arq3.c
        4. Desenvolva uma interface com o usuário. O usuário pode escolher as opções de: (1) abrir arquivo, (2) incluir entrada, (3) excluir entrada e (4) pesquisar entrada.
      2. Parte 2. Utilize alocação dinâmica de memória: (solução: prog7.2.c)
        1. Reimplemente o programa utilizando alocação dinâmica de memória e listas encadeadas.
        2. Desenvolva uma função para gravar os dados em um arquivo.
        3. Desenvolva uma função para ler/gravar os dados os dados de um arquivo.
        4. Desenvolva uma interface com o usuário. O usuário pode escolher as opções de: (1) abrir arquivo, (2) salvar, (3) incluir entrada, (4) excluir entrada e (5) pesquisar entrada.

    Soluções
    Soluções para os problemas propostos podem ser encontradas em http://www.eletrica.ufpr.br/pedroso/2015/TE091/Programas/c

    Voltar para página da TE091