Baixe o app para aproveitar ainda mais
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
Compartilhar