1008 ProgramaçãO C Completo

  • Published on
    24-May-2015

  • View
    20.544

  • Download
    4

Embed Size (px)

Transcript

<ul><li> 1. Curso de Linguagem C1-1- </li></ul><p> 2. Curso de Linguagem C....................................................................................................................................1Aula 1 - INTRODUO.................................................................................................................................3AULA 2 - Primeiros Passos.............................................................................................................................4O C "Case Sensitive"....................................................................................................................................4Introduo s Funes.................................................................................................................................7Introduo Bsica s Entradas e Sadas.....................................................................................................10Introduo a Alguns Comandos de Controle de Fluxo..............................................................................14Palavras Reservadas do C..........................................................................................................................17AULA 3 - VARIVEIS, CONSTANTES, OPERADORES E EXPRESSES...........................................18Nomes de Variveis...................................................................................................................................18Dicas quanto aos nomes de variveis........................................................................................................18Os Tipos do C............................................................................................................................................18Declarao e Inicializao de Variveis....................................................................................................19Operadores Aritmticos e de Atribuio...................................................................................................23Operadores Relacionais e Lgicos............................................................................................................25- Operadores Lgicos Bit a Bit..................................................................................................................26Expresses.................................................................................................................................................27- Expresses que Podem ser Abreviadas...................................................................................................28- Tabela de Precedncias do C...................................................................................................................29Modeladores (Casts)..................................................................................................................................29Aula 4 - ESTRUTURAS DE CONTROLE DE FLUXO..............................................................................30O Comando if............................................................................................................................................30- O Operador ?...........................................................................................................................................34O Comando switch....................................................................................................................................35O Comando for..........................................................................................................................................36O Comando while......................................................................................................................................39O Comando do-while.................................................................................................................................40O Comando break......................................................................................................................................41O Comando goto........................................................................................................................................42AULA 5 - MATRIZES E STRINGS.............................................................................................................44Vetores...........................................................................................................................................................44Strings........................................................................................................................................................46Matrizes.....................................................................................................................................................49AULA 6 PONTEIROS...............................................................................................................................52Declarando e Utilizando Ponteiros............................................................................................................53Ponteiros e Vetores....................................................................................................................................57Inicializando Ponteiros..............................................................................................................................61Ponteiros para Ponteiros............................................................................................................................61Cuidados a Serem Tomados ao se Usar Ponteiros....................................................................................62A Funo....................................................................................................................................................63O Comando return.....................................................................................................................................64Prottipos de Funes................................................................................................................................66O Tipo void................................................................................................................................................67Arquivos-Cabealhos.................................................................................................................................68Escopo de Variveis..................................................................................................................................69Passagem de parmetros por valor e passagem por referncia..................................................................72Vetores como Argumentos de Funes.....................................................................................................74Os Argumentos argc e argv.......................................................................................................................74Recursividade............................................................................................................................................75Outras Questes.........................................................................................................................................76 AULA 8 - DIRETIVAS DE COMPILAO...................................................................................................77As Diretivas de Compilao......................................................................................................................77A Diretiva include.....................................................................................................................................77As Diretivas define e undef.......................................................................................................................78As Diretivas ifdef e endif...........................................................................................................................80A Diretiva ifndef........................................................................................................................................80A Diretiva if...............................................................................................................................................81A Diretiva else...........................................................................................................................................81A Diretiva elif............................................................................................................................................81Introduo..................................................................................................................................................832 3. Lendo e Escrevendo Caracteres.................................................................................................................83Lendo e Escrevendo Strings......................................................................................................................84Entrada e Sada Formatada........................................................................................................................85Abrindo e Fechando um Arquivo..............................................................................................................89Lendo e Escrevendo Caracteres em Arquivos...........................................................................................91Outros Comandos de Acesso a Arquivos..................................................................................................94Fluxos Padro............................................................................................................................................98 AULA 10 - Tipos de Dados Avanados..........................................................................................................100Modificadores de Acesso.........................................................................................................................100Converso de Tipos.................................................................................................................................104Modificadores de Funes.......................................................................................................................105Ponteiros para Funes............................................................................................................................106Alocao Dinmica..................................................................................................................................107Alocao Dinmica de Vetores e Matrizes..............................................................................................112 AULA 11 - Tipos de Dados Definidos Pelo Usurio......................................................................................115Estruturas - Primeira parte.......................................................................................................................115Estruturas - Segunda parte.......................................................................................................................118Declarao Union....................................................................................................................................122Enumeraes............................................................................................................................................124O Comando sizeof...................................................................................................................................124- O Comando typedef..............................................................................................................................125Uma aplicao de structs: as listas simplesmente encadeadas................................................................126 Aula 1 - INTRODUOVamos, neste curso, aprender os conceitos bsicos da linguagem de programao C a qual tem se tornado cada dia mais popular, devido sua versatilidade e ao seu poder. Uma das grandes vantagens do C que ele possui tanto caractersticas de "alto nvel" quanto de "baixo nvel". 3 -3- 4. Apesar de ser bom, no pr-requisito do curso um conhecimento anterior de linguagens de programao. importante uma familiaridade com computadores. O que importante que voc tenha vontade de aprender, dedicao ao curso e, caso esteja em uma das turmas do curso, acompanhe atentamente as discusses que ocorrem na lista de discusses do curso.O C nasceu na dcada de 70. Seu inventor, Dennis Ritchie, implementou-o pela primeira vez usando um DEC PDP-11 rodando o sistema operacional UNIX. O C derivado de uma outra linguagem: o B, criado por Ken Thompson. O B, por sua vez, veio da linguagem BCPL, inventada por Martin Richards.O C uma linguagem de programao genrica que utilizada para a criao de programas diversos como processadores de texto, planilhas eletrnicas, sistemas operacionais, programas de comunicao, programas para a automao industrial, gerenciadores de bancos de dados, programas de projeto assistido por computador, programas para a soluo de problemas da Engenharia, Fsica, Qumica e outras Cincias, etc ... bem provvel que o Navegador que voc est usando para ler este texto tenha sido escrito em C ou C++. Estudaremos a estrutura do ANSI C, o C padronizado pela ANSI. Veremos ainda algumas funes comuns em compiladores para alguns sistemas operacionais. Quando no houver equivalentes para as funes em outros sistemas, apresentaremos formas alternativas de uso dos comandos. Sugerimos que o aluno realmente use o mximo possvel dos exemplos, problemas e exerccios aqui apresentados, gerando os programas executveis com o seu compilador. Quando utilizamos o compilador aprendemos a lidar com mensagens de aviso, mensagens de erro, bugs, etc. Apenas ler os exemplos no basta. O conhecimento de uma linguagem de programao transcende o conhecimento de estruturas e funes. O C exige, alm do domnio da linguagem em si, uma familiaridade com o compilador e experincia em achar "bugs" nos programas. importante ento que o leitor digite, compile e execute os exemplos apresentados.AULA 2 - Primeiros Passos O C "Case Sensitive" Vamos comear o nosso curso ressaltando um ponto de suma importncia: o C "Case Sensitive", isto , maisculas e minsculas fazem diferena. Se declarar uma varivel com o nome soma ela ser diferente de Soma, SOMA,4 5. SoMa ou sOmA. Da mesma maneira, os comandos do C if e for, por exemplo, s podem ser escritos em minsculas pois seno o compilador no ir interpret-los como sendo comandos, mas sim como variveis. Dois Primeiros Programas Vejamos um primeiro programa em C: #include /* Um Primeiro Programa */ int main () { printf ("Ola! Eu estou vivo!n"); return(0); } Compilando e executando este programa voc ver que ele coloca a mensa...</p>