Ir ao conteúdo
  • Cadastre-se

Tabela asc ii


Posts recomendados

Tenho esse código, precisava que ele ficasse organizado dentro de tabelas respectivas, e adicionar também a tabela binária.

Alguem pf me ajuda pls!!

:thumbsup:

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
/*Autor: Eduardo Cavalcante
*/
int main()
{
    int a=0;
    printf("IMPRIMINDO TABELA ASCII");
    for(a=1;a<255;a++)
    printf("Decimal: %i   Octal: %o Hexadecimal: %x   Caractere: %c ",a,a,a,a);
    //Obs: %i imprime iteiro, %o imprime octal, %x imprime Hexadecimal, %c imprime caractere char
    printf("Digite algo para finalizar");


system("pause");
}
		

 

Link para o comentário
Compartilhar em outros sites

Você está varrendo todos os códigos da tabela ASCII.

Nem todo código contido nela é passível de mostrar na tela, como por exemplo, os códigos de controle (do 0 ao 32).

Além disso, do código 128 até 255, vai pode ser que alguns não sejam apresentados devido ao tipo de charset utilizado no terminal.

 

Fiz uma modificação no código, para não mostrar os caracteres do 0 ao 32:

 

#include<stdlib.h>
#include<stdio.h>

int main(void)
{
    int a = 0;

    printf("IMPRIMINDO TABELA ASCII");

    for ( a = 1; a < 255; a++ )
    {
        printf("Decimal: %i\tOctal: %o\tHexadecimal: %x\t\t", a, a, a);

        if (a > 32)
            printf("Caractere: %c",a);

        printf("\n");
    }

    //Obs: %i imprime iteiro, %o imprime octal, %x imprime Hexadecimal, %c imprime caractere char
    
    system("pause");
    
    return 0;
}

 

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

Em C não existe uma máscara que apresente diretamente o valor binário.

Para demonstrar, você pode utilizar a decomposição do número dividido por 2 (processo normal para conversão de bases) ou então utilizar bit mask (é mais fácil, porém envolve conhecimento mais avançado em C).

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

Elaborei uma rotina simples que apresenta o número binário:

 

Spoiler

    char caracter = '\0';
    char temp = '\0';
    int binario[8] = {0};
    int controle = 0;
    int contador = 0;

    fscanf(stdin, " %c", &caracter);

    temp = caracter;

    /* Conversão do numero decimal em binário - INICIO */
    while ( temp > 1 ) 
    {
        binario[controle++] = temp % 2;
        temp = temp / 2;
    }
    binario[controle] = temp % 2;
	/* Conversão do numero decimal em binário - FIM */

    fprintf(stdout, "Binario: ");
    for ( contador = 7; contador >= 0; contador-- ) /* Apresenta o valor em binario na tela */
        fprintf(stdout, "%d", binario[contador]);

    fprintf(stdout, " - Decimal: %d - Hexadecimal: %x - Octal: %o - Caracter: %c\n", caracter, caracter, caracter, caracter);

 

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@ScreenBlack  ocorreu erro nesse novo código, pode me explicar o que está faltando ? Erro abaixo:

prog.cpp:10:11: error: expected constructor, destructor, or type conversion before '(' token
     fscanf(stdin, " %c", &caracter);
           ^
prog.cpp:12:5: error: 'temp' does not name a type
     temp = caracter;
     ^
prog.cpp:15:5: error: expected unqualified-id before 'while'
     while ( temp > 1 ) 
     ^
prog.cpp:20:5: error: 'binario' does not name a type
     binario[controle] = temp % 2;
     ^
prog.cpp:23:12: error: expected constructor, destructor, or type conversion before '(' token
     fprintf(stdout, "Binario: ");
            ^
prog.cpp:24:5: error: expected unqualified-id before 'for'
     for ( contador = 7; contador >= 0; contador-- ) /* Apresenta o valor em binario na tela */
     ^
prog.cpp:24:25: error: 'contador' does not name a type
     for ( contador = 7; contador >= 0; contador-- ) /* Apresenta o valor em binario na tela */
                         ^
prog.cpp:24:40: error: 'contador' does not name a type
     for ( contador = 7; contador >= 0; contador-- ) /* Apresenta o valor em binario na tela */
                                        ^
prog.cpp:27:12: error: expected constructor, destructor, or type conversion before '(' token
     fprintf(stdout, " - Decimal: %d - Hexadecimal: %x - Octal: %o - Caracter: %c\n", caracter, caracter, caracter, caracter);
            ^

 

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!