Buscar

pratica_03

Prévia do material em texto

Universidade do Estado de Mato Grosso
Disciplina: Laboratório de Programação I
Curso de Bacharelado em Ciências da Computação
Responsáveis: Prof. Dr. Nivaldi Calonego Junior
 Prof. Dr. Rhycardo Luiz Monteiro
PRÁTICA 03: TIPOS DE DADOS E SAÍDA DE DADOS.
Deve haver apenas 01 (um) main por programa-fonte. 
Cada página desta prática corresponde a 01 (um) arquivo e cada arquivo tem 01 (um) main.
Crie o arquivo p03_1.c dado na Tabela 01.
Compile e execute.
Anote os erros e as respectivas correções.
A função printf(“”,<argumentos>) imprime no dispositivo padrão de saída a mensagem que aparece entre 
aspas (“”). Ela é parte da biblioteca padrão de entrada e saída de dados. Esse procedimento formata a cadeia 
de acordo com os caracteres de controle que são inseridos após a barra (\) ou após o por cento (%). A barra 
(\) envia caracteres de controle para o dispositivo de impressão. Por exemplo:
• \n : faz mudar de linha e colocar o cursor no início da linha;
• \t : coloca o cursor na próxima coluna de tabulação de dados;
• veja o manual para obter outros caracteres.
O caractere % deve ser seguido por uma expressão que define qual é o tipo de dado e como deve ser 
formatado. Por exemplo:
• %c – imprime 01 (um) caractere;
• %d – imprime 01 (um) número decimal;
• %f – imprime 01 (um) número real (ponto flutuante – float);
• veja o manual para obter outros formatos.
É necessário que o pré-processador C seja informado que a função “printf” será utilizada no código.
Isso é feito com o comando #include <stdio.h>
Tabela 01 - Arquivo: p03_1.c
//================== arquivo: p03_1.c =================
// mkdir /home/aluno/pratica_03
// cd /home/aluno/pratica_03
// touch eChar.c
// gedit eChar.c
// gcc eChar.c -o meuChar
// Note que o argumento -o passado para o compilador gcc faz com que ele gere o arquivo 
// executavel denominado meuChar. Portanto, é possível escolher o nome do 
// programa-executável. 
// O comando abaixo informa ao Linux que deve ser executado o programa meuChar
// ./meuChar
// =============================================
#include <stdio.h>
int main(int argc, char* argv[]){
 char c, ch = 'a';
 printf("1 - ch = %c\n", ch);
 c = 'A';
 //Observe a ordem do formato na cadeia (%i) e a odem dos valores a serem inseridos.
 printf("2 - ch = %c \t\t %c\n\n", ch, c);
 ch = '9';
 printf("6 - ch = %c \t\t %c\n", ch, c);
 printf("7 - ch = %c\n", ch);
 return 0;
}
1. O que acontece se o comando #include <stdio.h> do pré-processador for omitido do código dado na 
Tabela1.
2. Por que ocorre erro quando a linha de comando char c, ch = 'a'; é substituída por const char c, ch = 'a'; ?
3. O que é tabela ASCII? Dê exemplos de códigos e respectivos elementos gráficos dessa tabela.
Universidade do Estado de Mato Grosso
Disciplina: Laboratório de Programação I
Curso de Bacharelado em Ciências da Computação
Responsáveis: Prof. Dr. Nivaldi Calonego Junior
 Prof. Dr. Rhycardo Luiz Monteiro
1. Crie o arquivo p03_2.c dado na Tabela 02.
2. Compile. Anote os erros e as respectivas correções.
3. Execute o programa.
4. Há um erro no comando ./meuint. Por que o programa não executa? Como corrigir?
Tabela 02 - Arquivo: p03_2.c
//================== arquivo: p03_2.c =================
// touch eInt.c
// gedit eInt.c
// gcc eInt.c -o meuInt
// ./meuint
// =============================================
#include <stdio.h>
int main(int argc, char* argv[]){
 int c = 10;
 printf("1 => c = %i\tc+1 = %i\t(c+1)/2=%i\n", c, c+1, (c+1)/2);
 c = 2 * c + 15;
 printf("2 => 2*c+15=%d\n", c);
 return 0;
}
5. Crie o arquivo p03_3.c dado na Tabela 03.
6. Compile. Por que o programa não compila?
7. Anote os erros e as respectivas correções.
Tabela 03 - Arquivo: p03_3.c
//================== arquivo: p03_3.c =================
// touch eRR.c
// gedit eRR.c
//ATENÇÃO: mERR.c é diferente de mERR. O comando abaixo cria o arquivo executável mERR, 
// a partir do programa-fonte mERR.c. 
// gcc mERR.c -o mERR
// ./mERR
// =============================================
#include <stdi.h>
int main(int argc char* argv[]){
 int c = 10;
 printf("1 => c = %i\tc+1 = %i\t(c+1)/2=%i\n", c, c+1, (c1)/2);
 c = 2 * c + 15
 printf("2 => 2*c+15=%d\n", c);
 return 0;
Universidade do Estado de Mato Grosso
Disciplina: Laboratório de Programação I
Curso de Bacharelado em Ciências da Computação
Responsáveis: Prof. Dr. Nivaldi Calonego Junior
 Prof. Dr. Rhycardo Luiz Monteiro

Continue navegando