El contenido después del signo% en la función de entrada-salida estandarizada siempre ha sido un misterio. Intenta sumar aquí. Las partes que se pueden colocar en las dos funciones son las siguientes:
printf ()% [banderas] [ancho] [. prec] [hlL] tipo scanf ()% [flags] tipo
scanf () es más simple.
printf ()
1 bandera
bandera
sentido
-
Alinear a la izquierda
+
Ponga un cartel al frente (+ o -)
(espacio)
Número positivo dejado en blanco
0
0 relleno
#
Agregue identificadores 0x, 0 antes de hexadecimal y octal respectivamente
2 ancho
ancho
sentido
número
Número mínimo de caracteres (longitud de toda la salida)
*
El siguiente parámetro es el número de caracteres.
.número
El número de dígitos después del punto decimal.
. *
El siguiente parámetro es el número de dígitos después del punto decimal.
3 .pre
.pre
sentido
.número
El número de dígitos después del punto decimal.
. *
El siguiente parámetro es el número de dígitos después del punto decimal.
No agregue, el valor predeterminado es la alineación a la derecha. Obviamente, el relleno 0 no se puede usar después de la alineación a la izquierda. El orden de las gramáticas en el mismo nivel es irrelevante.
4 modificador
Modificación de tipo
sentido
S.S
Byte único
h
corto
l
largo
ll
largo
L
largo doubel
5 Tipo
Tipos de
sentido
yo o d
En t
tu
int sin firmar
O
Octal
X
Hexadecimal
X
Hexadecimal para letras mayúsculas
fo F
flotador, 6
e o E
índice
gramo
flotador
GRAMO
flotador
a o A
Punto flotante hexadecimal
C
carbonizarse
s
Cuerda
pag
puntero
norte
Número de salidas o salidas
int num =0;printf("hello world%n\n",&num);//%n的使用, 本地编译器不能使用%n, 在线编译器可以printf("%d\n",num);// 输出
hello world
11
scanf ()
1 escaneo
bandera
sentido
*
salte por encima
número
Número máximo de caracteres
S.S
carbonizarse
h
corto
l
largo, doble
ll
largo largo
L
doble largo
2 scanf
tipo
sentido
D
En t
I
Entero, puede ser hexadecimal u octal
tu
int sin firmar
O
Octal
X
Hexadecimal
a, e, f, g
flotador
C
carbonizarse
s
Cuerda
[…]
Caracteres permitidos
pag
puntero
El valor de retorno de printf () y scanf ()
prinff () devuelve el número de caracteres de salida scanf () devuelve el número de elementos de entrada