Exercícios Resolvidos de Programação em Linguagem C
Enviado por Comunidade Wikiteka e classificado em Computação
Escrito em em
português com um tamanho de 3,24 KB
I - Assinale V ou F:
- a) (F) MAIN não é uma palavra-chave da linguagem C (o correto é
main). - b) (F) Podemos guardar em um
long intvalores muito maiores que em umint. - c) (F)
\trepresenta uma tabulação;\2tnão é uma sequência de escape válida. - d) (V)
x+=2*t+y;é equivalente ax=x+2*t+y;. - e) (V) O formato
%cimprime caracteres ASCII. - f) (F) O formato
%Cnão é um padrão para caracteres maiúsculos em C. - g) (F) O formato
%bnão imprime números em binário nativamente. - h) (V) O formato
%ximprime números em hexadecimal. - i) (V) O formato
%Ximprime números em hexadecimal com letras maiúsculas. - j) (V) Um arquivo de texto plano padrão DOS apresenta tamanho maior que o padrão UNIX devido aos caracteres de fim de linha (CRLF).
- k) (F) Uma string em C é uma sequência de caracteres terminada pelo caractere nulo
\0.
II - Qual a saída dos programas a seguir?
a) Análise de Condicional
#include <stdio.h>main() { int al=25; if(50>=al && al>=10) printf("Está dentro do intervalo"); }
Nota: O código original não mostrava nada devido à sintaxe incorreta da condição.
b) Manipulação de Vetores
#include <stdio.h>main() { char mt[7] = {'B','o','m', ' ', 'd','i','a'}; puts(mt); }
Nota: Exibe lixo de memória, pois falta o caractere nulo '\0' ao final do vetor.
c) Comparação de Strings
main() { char str[] = "Esta é uma string"; if(strcmp(str, "Esta é uma string") == 0) printf("As strings são iguais"); }
Nota: Comparação de strings em C deve ser feita com strcmp da biblioteca <string.h>.
d) Manipulação de Arquivos
Nota: O programa original falha na abertura pois foi aberto em modo leitura ("r") e tentou-se realizar escrita (fputc).
III - Exercício de Programação: Função bioskey()
#include <bios.h>#include <stdio.h>#include <process.h>void main(void) {int tecla, i;FILE *sai;static char *nometecla[] = {"HOME", "LEFT", "RIGHT", "END", "INS", "DEL", "ENTER", "BKSPC", "ESC"};sai = fopen("teclas.h", "w");if(sai == NULL) { printf("Erro na criação do arquivo"); exit(0); }for(i=0; i < 9; i++) {printf("\n%s: ", nometecla[i]);tecla = bioskey(0);fprintf(sai, "#define %s 0x%04X\n", nometecla[i], tecla);}fclose(sai);}