Departamento: | Ciências Exatas e Aplicadas |
Unidade: | Instituto de Ciências Exatas e Aplicadas |
Número de créditos: | 4 |
Carga horária semanal: | 2 teóricas + 2 práticas = 4 total |
Duração em semanas: | 18 |
Carga horária semestral: | 72 horas-aula |
Pré-requisitos: | |
: |
Desenvolver a capacidade de construir programas de pequeno e médio porte com a utilização de conceitos de programação estruturada.
Unidades e assuntos | número | número | referências |
|||
1. | Visão geral do curso | 01 | 01 |
|
||
2. | Estrutura básica de um computador | 01 | 02 |
|
||
3. | Algoritmos |
|
|
|
||
3.1 | Importância das técnicas de programação |
|
|
|
||
3.2 | Conceitos de lógica de programação e algoritmos |
|
|
|
||
3.3 | Definição de algoritmo |
|
|
|
||
3.4 | Principais formas de representação de algoritmos: |
|
|
|
||
3.4.1 | descrição narrativa |
|
|
|
||
3.4.2 | fluxograma |
|
|
|
||
3.4.3 | pseudo-código | 02 | 04 |
|
||
4. | Linguagens de programação |
|
|
|
||
4.1 | Conceitos de programa e linguagens de programação |
|
|
|
||
4.2 | Regras de sintaxe |
|
|
|
||
4.3 | Programa compilador |
|
|
|
||
4.4 | Erros de sintaxe e erros de lógica |
|
|
|
||
4.5 | Bibliotecas |
|
|
|
||
4.6 | Programa-fonte, programa-objeto e programa executável |
|
|
|
||
4.7 | Diretiva de inclusão | 01 | 05 |
|
||
5. | Tipos e variáveis |
|
|
|
||
5.1 | Conceitos de variáveis e constantes |
|
|
|
||
5.2 | Tipos de dados pré-definidos |
|
|
|
||
5.3 | Inicialização de variáveis |
|
|
|
||
5.4 | Operadores e expressões |
|
|
|
||
5.5 | Conversão de tipos | 02 | 07 |
|
||
6. | Entrada e saída de dados |
|
|
|
||
6.1 | Funções de entrada e saída: |
|
|
|
||
6.1.1 | scanf() |
|
|
|
||
6.1.2 | printf() |
|
|
|
||
6.1.3 | gets() |
|
|
|
||
6.1.4 | getche() |
|
|
|
||
6.1.5 | puts() | 02 | 09 |
|
||
7. | Comandos de controle de fluxo |
|
|
|
||
7.1 | Comandos de seleção: |
|
|
|
||
7.1.1 | if |
|
|
|
||
7.1.2 | if else |
|
|
|
||
7.1.3 | switch |
|
|
|
||
7.2 | Comandos de repetição: |
|
|
|
||
7.2.1 | while |
|
|
|
||
7.2.2 | do while |
|
|
|
||
7.2.3 | for |
|
|
|
||
7.3 | Comandosbreak e continue |
|
|
|
||
7.4 | Aninhamento de blocos em programas | 11 | 20 |
|
||
8. | Funções |
|
|
|
||
8.1 | Definição de funções e protótipos |
|
|
|
||
8.2 | Regras de escopo |
|
|
|
||
8.3 | Variáveis locais e globais |
|
|
|
||
8.4 | Funções com retorno de valor |
|
|
|
||
8.5 | Passagem de parâmetros por valor e referência |
|
|
|
||
8.6 | Variáveis static |
|
|
|
||
8.7 | Argumentos da linha de comando |
|
|
|
||
8.8 | Funções recursivas | 10 | 30 |
|
||
9. | Diretivas de preprocessamento: macros e compilação condicional | 02 | 32 |
|
||
10. | Vetores |
|
|
|
||
10.1 | Declaração e inicialização |
|
|
|
||
10.2 | Matrizes |
|
|
|
||
10.3 | Passagem de vetores como parâmetros para funções | 04 | 36 |
|
||
11. | Strings |
|
|
|
||
11.1 | Representação |
|
|
|
||
11.2 | Manipulação |
|
|
|
||
11.3 | Funções para manipulação de strings | 04 | 40 |
|
||
12. | Ponteiros |
|
|
|
||
12.1 | Declaração |
|
|
|
||
12.2 | Utilização |
|
|
|
||
12.3 | Inicialização |
|
|
|
||
12.4 | Operações |
|
|
|
||
12.5 | Ponteiros para ponteiros |
|
|
|
||
12.6 | Ponteiros para funções |
|
|
|
||
12.7 | Relação entre ponteiros e vetores | 08 | 48 |
|
||
13. | Alocação dinâmica de memória |
|
|
|
||
13.1 | Funções: malloc(), calloc(), realloc(), e free() |
|
|
|
||
13.2 | Alocação dinâmica de vetores e matrizes | 06 | 54 |
|
||
14. | Algoritmos simples de pesquisa e ordenação | 08 | 62 |
|
||
15. | Tipos de dados definidos pelo programador: estruturas | 06 | 68 |
|
||
Avaliações | 04 | 72 |
|
|||
E. A. V. ASCENCIO A. F. G. CAMPOS. Fundamentos da Programação de Computadores.
Dominando a Linguagem C. Rio de Janeiro: Ciência Moderna, 2004.
Estruturas de dados usando C. São Paulo: Makron Books, 1995.
N. A. C. GUIMARÃES A. M. LAGES. Algoritmos e Estruturas de dados. Rio de Janeiro: Livros Técnicos e Científicos Editora S.A., 1985.
Paul Deitel Harvey Deitel. C++ Como Programar. quinta edição. ISBN-10: 978-85-7605-056-8. Pearson, 2006.
Introdução à Programação: 500 algoritmos resolvidos. Rio de Janeiro: Campus, 2002.
Lógica de Programação – A Construção de Algoritmos e Estruturas de Dados. 2 ed. São Paulo: Pearson, 2000.
V.V. MIZRAHI. Treinamento em Linguagem C++ – Módulos 1 e 2. Makron Books, 1995.
Harry FARRER outros. Algoritmos Estruturados. terceira edição. Rio de janeiro: Livros Técnicos e Científicos Editora S.A., 1999.
Título | Autor |
| Prof. Marcelo Rudek |
| Profa. Olinda Nogueira Paes Cardoso |
|
Título | Autor |
Curso de Programação em C | Prof. Renato Cardoso Mesquita - DEE/UFMG |
Aspectos Formais da Computação – Linguagem C | Prof. Camillo - PUCPR |
Introdução à Linguagem C | GACLI - UNICAMP |
Programação em C – Um Curso Básico e Abrangente | Prof. Menotti – DCC/UFMG |
Linguagem de Programação C | Profa Isabel Harb Manssour |
|
avaliação | peso | data | assuntos |
Prova 1 | 3 | ||
Prova 2 | 3 | ||
Aulas práticas e listas de exercícios | 4 | ||
Exame especial | 10 | De acordo com a resolução CEPE xxxxx | |
Existe um grupo de discussão sobre o conteúdo do curso no Google Groups que deverá ser utilizado ativamente pelos alunos, professor e monitores durante o curso.
O professor e os monitores poderão propor questões para discussão no grupo, bem como problemas para serem resolvidos.
Caberá aos alunos discutir as questões e problemas propostos, apontando soluções básicas e/ou soluções alternativas ou comentando o assunto. Os alunos poderão também propor algum problema ou levantar alguma questão para discussão que julgarem interessante.
O endereço do grupo de discussão é http://groups.google.com/group/cea030.
Cada aluno deverá se inscrever imediatamente no grupo e começar a participar das discussões.
Assunto | Arquivo | Data |
01. Introdução | 01-introducao.pdf | 28/04/2011 |
02. Algoritmos | 02-algoritmos.pdf | 05/05/2011 |
03. Portugol | 03-portugol.pdf | 05/05/2011 |
04. Processo de programação | 04-processo-de-programacao.pdf | 05/05/2011 |
05. Tipos, variáveis e expressões | 05-tipos-variaveis-expressoes.pdf | 06/05/2011 |
06. Entrada e saída de dados | 06-entrada-saida.pdf | 12/05/2011 |
07. Estruturas de seleção | 07-estruturas-condicionais.pdf | 19/05/2011 |
08. Estruturas de repetição | 08-estruturas-de-repeticao.pdf | 02/06/2011 |
09. Vetores | 09-vetores.pdf | 09/06/2011 |
|
Assunto | Lista | Data |
01. Valores, tpos, expressões, entrada e saída | cea030.lista.01.pdf | 19/05/2011 |
02. Estruturas de seleção | cea030.lista.02.pdf | 19/05/2011 |
03. Estruturas de repetição | cea030.lista.03.pdf | 02/06/2011 |
04. Vetores | cea030.lista.04.pdf | 09/06/2011 |
|
Assunto | Prática | Data |
Funções | Jogo da velha | |
|
Resultados de avaliações e frequências