Introdução
Neste laboratório, você aprenderá como escrever e executar seu primeiro programa C na VM do LabEx. Você começará com um simples programa "Hello, World!", depois aprimorará a saída com múltiplas instruções de impressão, personalizará a saída usando variáveis, explorará a manipulação de strings em C e, finalmente, aprenderá como compilar e depurar programas C.
Escreva e Execute Seu Primeiro Programa C
Nesta etapa, você escreverá e executará seu primeiro programa C na VM do LabEx. Nós o guiaremos na criação de um simples programa "Hello, World!" que o apresentará à estrutura básica da programação em C.
Abra o WebIDE
- Clique na aba "WebIDE" (Padrão) na interface do LabEx para abrir o ambiente semelhante ao VS Code.
- No explorador de arquivos da barra lateral esquerda, clique com o botão direito e selecione "Novo Arquivo".
- Nomeie o arquivo como
hello.c. A extensão.cindica que este é um arquivo de código fonte C.

Se você quiser saber mais sobre o WebIDE, consulte o Guia do WebIDE.
Escreva Seu Primeiro Programa C
Copie e cole o seguinte código em seu arquivo hello.c:
#include <stdio.h>
int main() {
printf("Hello, World!\n");
return 0;
}
Vamos analisar este código:
#include <stdio.h>: Inclui a biblioteca padrão de entrada/saídaint main() { ... }: A função principal onde a execução do programa começaprintf("Hello, World!\n");: Imprime texto na tela\n: Move para uma nova linha após a impressãoreturn 0;: Indica a conclusão bem-sucedida do programa
Compile e Execute o Programa
Abra o terminal em seu WebIDE e execute estes comandos:
gcc hello.c -o hello
./hello

Exemplo de saída:
Hello, World!
Explicação dos Comandos
gcc hello.c -o hello: Compila o código fonte C em um executável chamadohello./hello: Executa o programa compilado
Melhore a Saída com Múltiplas Instruções Printf
Nesta etapa, você aprenderá como aprimorar seu programa C adicionando múltiplas instruções de impressão. Isso o ajudará a entender como exibir uma saída mais complexa e usar várias linhas de texto em seus programas.
Modifique Seu Programa Existente
- Abra o arquivo
hello.cno WebIDE que você criou na etapa anterior. - Substitua o conteúdo do arquivo pelo seguinte código:
#include <stdio.h>
int main() {
printf("Hello, World!\n");
printf("Welcome to C programming!\n");
printf("This is your first multi-line program.\n");
return 0;
}
Explicação do Código
- Adicionamos mais duas instruções
printf - Cada
printftermina com\npara criar uma nova linha - Ponto e vírgula (
;) marca o fim de cada instrução
Compile e Execute o Programa Atualizado
Abra o terminal em seu WebIDE e execute estes comandos:
gcc hello.c -o hello
./hello
Exemplo de saída:
Hello, World!
Welcome to C programming!
This is your first multi-line program.
Observações Chave
- Cada instrução
printfimprime em uma linha separada - O
\ngarante quebras de linha entre as saídas - Você pode adicionar quantas instruções
printfforem necessárias
Dicas de Solução de Problemas:
- Certifique-se de que cada linha termine com
\n - Verifique se cada instrução
printftermina com ponto e vírgula - Verifique se você salvou o arquivo antes de compilar
Personalize a Saída Usando Variáveis
Nesta etapa, você aprenderá como usar variáveis em C para criar uma saída mais dinâmica e personalizada. As variáveis permitem que você armazene e manipule dados dentro do seu programa.
Crie um Novo Programa C com Variáveis
- Abra o WebIDE e crie um novo arquivo chamado
greeting.c. Ou, você pode digitartouch greeting.cno terminal para criar o arquivo. - Insira o seguinte código no arquivo
greeting.c:
#include <stdio.h>
int main() {
char name[] = "LabEx";
printf("Hello, %s!\n", name);
printf("Welcome to C programming, %s!\n", name);
return 0;
}
Explicação do Código
char name[] = "LabEx";: Cria uma variável de array de caracteres (string) chamadaname%sé um especificador de formato que diz aoprintfpara inserir uma string, nameapós a string de formato especifica qual variável inserir
Compile e Execute o Programa
Abra o terminal em seu WebIDE e execute estes comandos:
gcc greeting.c -o greeting
./greeting
Exemplo de saída:
Hello, LabEx!
Welcome to C programming, LabEx!
Experimentando com Variáveis
Tente alterar a variável name para o seu próprio nome:
char name[] = "Your Name";
Recompile e execute o programa para ver a saída personalizada.
Dicas de Solução de Problemas:
- Certifique-se de que a variável esteja definida antes de usá-la em
printf - Verifique se você salvou o arquivo antes de compilar
- Verifique se o nome da variável está escrito corretamente
Explore a Manipulação de Strings em C
Nesta etapa, você aprenderá técnicas básicas de manipulação de strings em C, incluindo concatenação de strings e o uso de funções relacionadas a strings da biblioteca padrão.
Crie um Programa de Manipulação de Strings
- Abra o WebIDE e crie um novo arquivo chamado
strings.c. - Insira o seguinte código:
#include <stdio.h>
#include <string.h>
int main() {
char first_name[] = "Lab";
char last_name[] = "Ex";
char full_name[20];
// Concatenate strings
strcpy(full_name, first_name);
strcat(full_name, " ");
strcat(full_name, last_name);
// Print string length and concatenated name
printf("First name length: %lu\n", strlen(first_name));
printf("Last name length: %lu\n", strlen(last_name));
printf("Full name: %s\n", full_name);
return 0;
}
Explicação do Código
#include <string.h>: Inclui funções de manipulação de stringsstrcpy(): Copia uma string para outrastrcat(): Concatena (une) duas stringsstrlen(): Retorna o comprimento de uma string%lu: Especificador de formato para unsigned long (usado com o comprimento da string)
Compile e Execute o Programa
Abra o terminal em seu WebIDE e execute estes comandos:
gcc strings.c -o strings
./strings
Exemplo de saída:
First name length: 3
Last name length: 2
Full name: Lab Ex
Técnicas de Manipulação de Strings
Principais operações de string demonstradas:
- Criação de arrays de caracteres
- Cópia de strings com
strcpy() - Junção de strings com
strcat() - Encontrar o comprimento da string com
strlen()
Dicas de Solução de Problemas:
- Certifique-se de ter espaço suficiente na string de destino
- Sempre inclua
<string.h>para funções de string - Tenha cuidado com os tamanhos dos buffers de string para evitar estouro (overflow)
Compilar e Depurar Programas C
Nesta etapa, você aprenderá técnicas essenciais de compilação e depuração para programas C, incluindo a compreensão de avisos do compilador, o uso de flags de compilação e estratégias básicas de depuração.
Crie um Programa com Erros Intencionais
- Abra o WebIDE e crie um novo arquivo chamado
debug.c. - Insira o seguinte código com alguns erros intencionais:
#include <stdio.h>
int main() {
int x = 10;
int y = 0;
// Intentional division by zero
int result = x / y;
printf("Result: %d\n", result);
// Unused variable
int z = 5;
return 0;
}
Compile com Avisos
Compile o programa com flags de aviso adicionais:
gcc -Wall -Wextra debug.c -o debug
Explicação das Flags de Compilação
-Wall: Habilita a maioria das mensagens de aviso-Wextra: Habilita avisos ainda mais detalhados
Exemplo de saída do compilador:
debug.c: In function ‘main’:
debug.c:13:9: warning: unused variable ‘z’ [-Wunused-variable]
13 | int z = 5;
| ^
Use GDB para Depuração
Compile com símbolos de depuração:
gcc -g debug.c -o debug
Inicie a depuração:
gdb ./debug
Comandos GDB:
run: Inicia o programabreak main: Define um ponto de interrupção na função mainprint x: Imprime o valor da variável xnext: Executa a próxima linhaquit: Sai do GDB
(gdb) run
Starting program: /home/labex/project/debug
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Program received signal SIGFPE, Arithmetic exception.
0x0000555555555167 in main () at debug.c:8
8 int result = x / y;
(gdb) print x
$1 = 10
(gdb) break main
Breakpoint 1 at 0x555555555155: file debug.c, line 4.
(gdb) next
Program terminated with signal SIGFPE, Arithmetic exception.
The program no longer exists.
(gdb) quit
GDB mostra um erro de divisão por zero na linha 8. O programa trava devido a uma exceção aritmética.
Corrija o Programa
Modifique debug.c para lidar com a divisão com segurança:
#include <stdio.h>
int main() {
int x = 10;
int y = 2; // Change from 0 to a non-zero value
if (y != 0) {
int result = x / y;
printf("Result: %d\n", result);
} else {
printf("Error: Division by zero!\n");
}
return 0;
}
Recompile e execute:
gcc -Wall -Wextra debug.c -o debug
./debug
Saída:
Result: 5
Dicas de Solução de Problemas:
- Sempre compile com
-Wall -Wextra - Preste atenção aos avisos do compilador
- Use GDB para cenários de depuração complexos
- Adicione verificação de erros para possíveis problemas de tempo de execução
Resumo
Neste laboratório, você aprendeu a escrever e executar seu primeiro programa C, aprimorar a saída com múltiplas instruções de impressão, personalizar a saída usando variáveis, explorar a manipulação de strings em C e compilar e depurar programas C. Você adquiriu experiência prática com a estrutura básica da programação C, incluindo a inclusão de bibliotecas, a definição da função main, o uso de printf() para exibir a saída e a compilação e execução do programa. Você também explorou conceitos mais avançados, como o uso de múltiplas instruções de impressão e o trabalho com variáveis e strings.



