From cfd6f87a5490d29561c88da1c711d593a3fe83ab Mon Sep 17 00:00:00 2001 From: Charles Santana Date: Mon, 26 May 2025 16:27:28 -0300 Subject: [PATCH] Pasta Renomeada --- aulas/aula-01.c | 6 ++++++ aulas/exercicio1.md | 23 +++++++++++++++++++++++ aulas/exercicio2.c | 20 ++++++++++++++++++++ aulas/exercicio3.c | 35 +++++++++++++++++++++++++++++++++++ 4 files changed, 84 insertions(+) create mode 100644 aulas/aula-01.c create mode 100644 aulas/exercicio1.md create mode 100644 aulas/exercicio2.c create mode 100644 aulas/exercicio3.c diff --git a/aulas/aula-01.c b/aulas/aula-01.c new file mode 100644 index 0000000..b4a5d5d --- /dev/null +++ b/aulas/aula-01.c @@ -0,0 +1,6 @@ +#include + +int main(void){ + puts("Salve, simpatia"); + return 0; +} diff --git a/aulas/exercicio1.md b/aulas/exercicio1.md new file mode 100644 index 0000000..02f2138 --- /dev/null +++ b/aulas/exercicio1.md @@ -0,0 +1,23 @@ +# 1. Pesquise e explique + +As classificações abaixo são utilizadas para descrever as características da linguagem C: + +Pesquise e explique cada uma delas. + +* Linguagem de alto nível; +* Linguagem compilada; +* Linguagem procedural; +* Linguagem imperativa; +* Linguagem estruturada: + +## Respostas + +**Linguagem de alto nível:** Próxima da linguagem humana, facilita o desenvolvimento e compreensão do código (ex: Python, Java). + +**Linguagem compilada:** Precisa ser traduzida por um compilador para código de máquina antes da execução (ex: C, C++). + +**Linguagem procedural:** Baseia-se em procedimentos ou funções para organizar o código, com foco em uma sequência lógica de instruções (ex: Pascal, C). + +**Linguagem imperativa:** Descreve como o programa deve executar as tarefas, com comandos que alteram o estado do sistema (ex: Fortran, Assembly). + +**Linguagem estruturada:** Subtipo de linguagem imperativa que usa estruturas de controle (como if, while, for) para organizar melhor o código e evitar o uso excessivo de goto (ex: C, Ada). diff --git a/aulas/exercicio2.c b/aulas/exercicio2.c new file mode 100644 index 0000000..6a3e568 --- /dev/null +++ b/aulas/exercicio2.c @@ -0,0 +1,20 @@ +#include // O que é isso e para que serve? + +// Por que todo o programa é escrito na função 'main()'? +// +// Quando um programe em C, é executado, a função Main é usada como um ponto de partida, sem a função Main +// o programa em C, não vai funcionar. +// + +int main(void) { + + puts("Salve, simpatia!"); // O que faz e como se usa a função 'puts()'? + // O puts imprime a string na tela, seria um similar do echo no bash. + // Para usar o puts, basta usar uma string como argumento entre as aspas duplas. + // O puts só funciona com strings + // + + return 0; // Para que serve esta instrução? + // é usado o zero, pois a main, está como int, e assim é esperado um valor do tipo inteiro + // 0 indica que o programa retornou com sucesso +} diff --git a/aulas/exercicio3.c b/aulas/exercicio3.c new file mode 100644 index 0000000..31d97af --- /dev/null +++ b/aulas/exercicio3.c @@ -0,0 +1,35 @@ +// 3. Compile, encontre, explique e corrija os bugs +// O uso de números mágicos (valores literais que não dão pistas de seus significados) +// é desaconselhado porque dificultam a leitura semântica do código. +// Sendo assim, nós utilizaremos a constante simbólica EXIT_SUCCESS, +// definida na biblioteca padrão com valor 0, em vez do inteiro literal 0 como argumento da instrução return: + +//#include + +//int main(void) { +// puts("Salve, simpatia!"); +// return EXIT_SUCCESS +//} + + +// Quantos erros foram encontrados e quais são eles? +// 4 Erros +// +// Quais são as correções sugeridas pelo gcc? +// +// faltou a inclusão da biblioteca stdlib +// faltou um ponto e virgula na linha 11 +// o EXIT_SUCCESS aparece como não uma função declarado e como um identificador não declarado +// Como ficou o código corrigido? +// +// +// +// + +#include +#include + +int main(void){ + puts("Salve, simpatia!"); + return EXIT_SUCCESS; +}