Introdução à construção de algoritmos imperativos. Tipos de dados elementares e declaração de variáveis simples.

Expressões aritméticas e lógicas. Controle de fluxo: execução sequencial, comandos de decisão e de repetição. Variáveis compostas homogêneas uni- e multi-dimensionais (vetores e matrizes) com alocação estática. Variáveis compostas heterogêneas (registros ou structs) com alocação estática. Introdução à modularização de programas: princípios básicos de declaração/uso de funções e passagem de parâmetros. Princípios de interface humano-computador: entrada e saída padrão, manipulação básica de arquivos. Introdução às ferramentas de desenvolvimento e técnicas de detecção de erro.

Estudo de uma linguagem de programação procedural.