¿Para que sirve los numeros entre % y d Al imprimir por pantalla en c y c++?

Tengo este código en c que imprime por pantalla

printf(" %6d ", arregloresultado[i][j]);

No lo hice yo por lo que no entiendo cual es la funcion que realiza el numero "6" que sencuantra despues de el porcentaje y antes del d

De antemano Muchas gracias por sus respuestas...

1 respuesta

Calificación
  • aem
    Lv 7
    hace 6 años
    Respuesta preferida

    Hola:

    La cadena inicial de printf se refiere al formato, el simbolo porciento indica que lo que continua es eso, las letras i entero, d decimal; c caracter, s string (cadena de texto); f float etc.

    Cuando antes de la letra se incluyen numeros, se definen los espacios que ocuparán esos datos (se usen o no) esto es muy util para apilarlos.

    %10s, se refiere a una cadena con un tamaño prefijado de 6 caracteres, para los numeros %4d; es un espacio para 4 cifras prefijado, para los numeros con decimales, la parte entera y decimal %6.2f indicará que de un total de 6 digitos, 2 serán decimales.

    Un ejemplo de la ayuda de TC de Borland V3 usando fores para probar simbolos en numeros (aqui va el codigo)

    #include <stdio.h>

    #include <string.h>

    #define I 555

    #define R 5.5

    int main(void)

    {

    int i,j,k,l;

    char buf[7];

    char *prefix = buf;

    char tp[20];

    printf("prefix 6d 6o 8x 10.2e "

    "10.2f\n");

    strcpy(prefix,"%");

    for (i = 0; i < 2; i++)

    {

    for (j = 0; j < 2; j++)

    for (k = 0; k < 2; k++)

    for (l = 0; l < 2; l++)

    {

    if (i==0) strcat(prefix,"-");

    if (j==0) strcat(prefix,"+");

    if (k==0) strcat(prefix,"#");

    if (l==0) strcat(prefix,"0");

    printf("%5s |",prefix);

    strcpy(tp,prefix);

    strcat(tp,"6d |");

    printf(tp,I);

    strcpy(tp,"");

    strcpy(tp,prefix);

    strcat(tp,"6o |");

    printf(tp,I);

    strcpy(tp,"");

    strcpy(tp,prefix);

    strcat(tp,"8x |");

    printf(tp,I);

    strcpy(tp,"");

    strcpy(tp,prefix);

    strcat(tp,"10.2e |");

    printf(tp,R);

    strcpy(tp,prefix);

    strcat(tp,"10.2f |");

    printf(tp,R);

    printf(" \n");

    strcpy(prefix,"%");

    }

    }

    getchar();

    return 0;

    }

    te muestra que ademas se pueden agregar otros simbolos para definir el formato numerico

    Dios te bendiga

    Saludos

    Antonio

    Attachment image
¿Aún tienes preguntas? Pregunta ahora para obtener respuestas.