Red de conocimientos sobre prescripción popular - Enciclopedia de Medicina Tradicional China - Ayúdenme a enumerar las dos partes de la cadena formateada en la función de salida estándar del lenguaje C printf.

Ayúdenme a enumerar las dos partes de la cadena formateada en la función de salida estándar del lenguaje C printf.

Personalmente te recomiendo que vayas a MSDN y le eches un vistazo. Después de todo, MSDN es el más formal y tiene ejemplos. MSDN es el mejor material para aprender a programar. Aprender a utilizar MSDN para encontrar algunas funciones también será de gran ayuda para sus estudios futuros.

Explicación detallada del formato del parámetro de la función printf()

El formato completo del control de formato printf:

%-0 carácter de formato m.n l o h

La siguiente es una descripción de los elementos que componen la descripción del formato:

①%: Indica el símbolo de inicio de la descripción del formato, que es imprescindible.

②-:Sí: indica salida alineada a la izquierda; si se omite, indica salida alineada a la derecha.

③0: 0 significa que el espacio especificado está lleno con 0, si se omite, significa que el espacio especificado no está lleno.

④ m.n: m se refiere al ancho del campo, es decir, el número de caracteres ocupados por el elemento de salida correspondiente en el dispositivo de salida. n se refiere a la precisión. Se utiliza para describir el número de decimales para generar números reales. Cuando se especifica n, la precisión implícita es n=6 dígitos.

⑤l o h:l representa el tipo entero largo y representa el tipo doble real. h se utiliza para modificar el carácter de formato del tipo entero a un tipo entero corto.

Caracteres de formato

Los caracteres de formato se utilizan para especificar el tipo de datos y el formato de salida del elemento de salida.

Formato ①d: se utiliza para generar números enteros decimales. Hay varios usos:

%d: salida de acuerdo con la longitud real de los datos enteros.

% md: m es el ancho del campo de salida especificado. Si el número de dígitos en los datos es menor que m, el extremo izquierdo se llena con espacios; si es mayor que m, se genera el número real de dígitos.

%ld: genera datos enteros largos.

Formato ②o: genera un número entero en formato octal sin signo. Los enteros largos se pueden generar en formato "%lo". También puede especificar el ancho del campo para la salida en formato "%mo".

Ejemplo:

main()

{ int a =-1

printf("%d, %o ", a, a);

}

Resultado de la ejecución: -1, 177777

Análisis del programa: Unidad de memoria: -1 (almacenado en forma de complemento) es ( 111111111165438.

Formato ③x: genera el número entero en formato hexadecimal sin signo. El entero largo se puede generar en formato "%lx". También puede especificar el ancho del campo y generarlo en formato "%mx". /p>

Formato ④u: genera el número entero en formato decimal sin signo. También puede especificar el ancho del campo que se generará en el formato "%mu": genera un carácter. formato: utilizado para generar una cadena

%s: por ejemplo, printf("%s", "CHINA. ") Genera la cadena "CHINA" (excluyendo las comillas dobles).

%ms: la cadena de salida ocupa m columnas. Si la longitud de la cadena en sí es mayor que m, se excederá el límite para obtener m. Si la longitud de la cadena es menor que m, rellene los espacios en blanco de la izquierda.

%-ms: si la longitud de la cadena es menor que m, la cadena se rellenará con espacios a izquierda y derecha en el rango de m columnas. la salida ocupa m columnas, pero solo toma los n caracteres izquierdos de la cadena. Estos n caracteres se muestran en el lado derecho de la columna M, con espacios a la izquierda

%-m.ns: donde m. y n tienen el mismo significado, n caracteres se generan en el lado izquierdo del rango de m columnas y los espacios se llenan en el lado derecho. Si n & gtm, el valor de n se toma automáticamente, lo que garantiza una salida normal de n caracteres.

Formato ⑦f: se utiliza para generar números reales (incluidas precisión simple y precisión doble), salida en forma decimal, tiene los siguientes usos:

%f: sin ancho especificado, salida. todos para la parte entera, se generan 6 decimales

%m.nf: La salida * * * ocupa m columnas, incluidas n decimales, como el margen izquierdo del valor menor que. m.

%-m.nf: La salida * * * ocupa n columnas, incluidas n posiciones decimales, por ejemplo, el ancho del valor es menor que el extremo derecho de m para completar los espacios.

Formato ⑧e: genera números reales en forma exponencial. Puede utilizar la siguiente forma:

%e: la parte numérica (también llamada mantisa) genera 6 dígitos decimales y la parte exponencial ocupa 5 o 4 dígitos.

Los caracteres %m.ne y %-m.ne: m, n y "-" tienen el mismo significado que antes. Aquí n se refiere al número de decimales en la parte numérica de los datos y m se refiere al ancho de todos los datos de salida.

Formato ⑨g: seleccione automáticamente el formato más corto de formato F o E para la salida, y no genere ceros sin sentido.

Explicación adicional sobre la función printf:

Si desea generar el carácter "%", debe usar dos %s consecutivos en la cadena de "control de formato", por ejemplo:

p>

printf("%f%% ", 1.0/3);

Rendimiento 0,333333%.

Para números de precisión simple, solo son válidos los primeros 7 dígitos y el lugar decimal es de 6 dígitos.

Para números de doble precisión, cuando se generan utilizando el símbolo de formato %lf, los primeros 16 bits son bits significativos y hay 6 dígitos decimales.