Resumen de detalles de uso común de entrada y salida de C / C ++ (análisis gráfico)

One.scanf () y printf ()

  •     Asegúrese de incluir #include <stdio.h> al llamar a printf y scanf
  •     El uso de printf es: printf ("cadena de control de formato", parámetro de salida uno, parámetro de salida dos);
  •     El uso de scanf es: scanf ("cadena de control de formato", parámetro de entrada uno, parámetro de entrada dos);
#include<stdio.h>
int main(){
	int a=996;
	printf("%d\n",a);//scanf()同理
	return 0;
}

Expansión de CA:

1.% *, que significa recibir y leer, pero no guarda los datos del tipo especificado correspondiente

                Uso: scanf (“% d% * c% d”, & a, & b) Por ejemplo, al recibir 1, 2 o 1/2 de tres datos, puede asignar 1 a ay 2 a b. Aunque los caracteres del medio se reciben pero no es necesario almacenarlos, resuelve perfectamente el problema de la separación cuando el usuario vuelve a generar dos números.

2. El  valor de retorno de la función scanf    (para decirlo sin rodeos, significa cuántos parámetros se reciben correctamente y cuál es el valor de retorno)         

  • Entrada normal de dos enteros

scanfä¸é ¢ ï¼ä½ å¯è½ä¸ç ¥ éçscanfçç¨æ³

  • Entrada anormal de dos enteros

scanfä¸é ¢ ï¼ä½ å¯è½ä¸ç ¥ éçscanfçç¨æ³

  • Dos enteros con% * entrada normal separada

scanfä¸é ¢ ï¼ä½ å¯è½ä¸ç ¥ éçscanfçç¨æ³

      3. Ancho de salida de datos         

  • El formato completo del control de formato printf:
    % -0 mn l o h caracteres de formato

       ①%: indica el símbolo de inicio de la descripción del formato, que es indispensable.
       ②-: Sí- significa salida justificada a la izquierda, si se omite, significa salida justificada a la derecha.
       ③0: 0 significa que el espacio designado se llena con 0, si se omite, el espacio designado no se llena.
       ④m.n: m se refiere al ancho del dominio, 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 posiciones decimales del número real de salida. Cuando se especifica n, la precisión implícita es n = 6 bits.
       ⑤L o h: l se refiere al tipo largo para el tipo entero y al tipo doble para el tipo real. h se utiliza para modificar el formato de caracteres de tipo entero a tipo corto.

        Descripción detallada ④:

  • % 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 de m y se emitirán todas las cadenas. Si la longitud de la cuerda es menor que m, se agrega un espacio a la izquierda.

#include<stdio.h>
int main(){
	char s[100];
	scanf("%s",s);
	printf("%10s\n",s);
	return 0;
}

  • % -ms: si la longitud de la cadena es menor que m, dentro del rango de la columna m, la cadena se inclinará hacia la izquierda, con espacios a la derecha.

  • % m.ns: la salida ocupa m columnas, pero solo se toman los n caracteres del extremo izquierdo de la cadena. Los n caracteres aparecen en el lado derecho de la columna m, con espacios a la izquierda.

#include<stdio.h>
int main(){
	char s[100];
	scanf("%s",s);
	printf("%10.4s\n",s);
	return 0;
}

  • % -m.ns: donde myn tienen el mismo significado que el anterior, y se generan n caracteres en el lado izquierdo del rango de la columna m, con espacios a la derecha. Si n> m, se toma automáticamente el valor de n , es decir , se garantiza la salida normal de n caracteres.

  • % m.nf: La salida ocupa un total de m columnas, que tienen n decimales. Si el ancho del valor es menor que m, agregue un espacio en el extremo izquierdo.

#include<stdio.h>
int main(){
	float f;
	scanf("%f",&f);
	printf("%10f\n",f);
	return 0;
}

Suplemento: La parte decimal de los números de coma flotante ocupa 6 dígitos, la parte decimal ocupa 1 dígito y la parte entera ocupa 2 dígitos. Además, el rango de precisión de los números de coma flotante es limitado (con ciertos errores). Para obtener más información, consulte   https://blog.csdn.net/imJaron/ artículo / detalles / 78392264

  • % -m.nf: La salida ocupa un total de n columnas, las cuales tienen n decimales, si el ancho del valor es menor que m, agregue un espacio en el extremo derecho.

  • % e: La parte numérica (también conocida como mantisa) genera 6 lugares decimales y la parte exponente ocupa 5 o 4 dígitos.

  • % m.ne y% -m.ne: los significados de los caracteres m, n y "-" son los mismos que antes. Aquí n se refiere al número de posiciones decimales en la parte digital de los datos y m representa el ancho de todos los datos de salida.

Para otros formatos, los lectores deben verificar la distinción por sí mismos.

二 .cin.get () getchar () cin.getine () getline () gets () scanf ()

  • cin.get () lee un solo carácter, incluidos los espacios en blanco iniciales. Para obtener más información, consulte: http://c.biancheng.net/view/1346.html
  • getchar () Obtiene un carácter, finaliza una entrada con un retorno de carro y habrá un retorno de carro en el búfer
  • cin.getline () Obtiene una línea de cadena

          cin.getline (s, 100); Leer una línea completa a la vez y descartar la nueva línea generada por la tecla Enter, s debe ser un tipo de matriz de caracteres, es decir, char s [100];

  • getline () es C, obtén una línea de cadena

          getline (cin, s) // Acepta una cadena, puede aceptar espacios y salida, debe incluir el archivo de encabezado #include <cstring>, s debe ser un tipo de cadena, es decir, cadena s; debe presionar la tecla Enter dos veces para mostrar cuando se genera , La primera vez que presiona Enter para indicar el final de la cadena, la segunda vez que presiona Enter para iniciar la salida.

  • gets () acepta una cadena, puede aceptar espacios y generarla, y finalizar una entrada con un retorno de carro, el búfer no deja retornos de carro
  • scanf (); Termina una entrada con un espacio en blanco inicial como espacio de tabulación, retorno de carro y retorno de carro en el búfer

Enlace de referencia de la fuente del artículo:

1. https://www.cnblogs.com/michaeljunlove/p/3883717.html

2. https://www.dotcpp.com/wp/786.html

3. https://wenwen.sogou.com/z/q654652327.htm

Supongo que te gusta

Origin blog.csdn.net/qq_41048982/article/details/90709309
Recomendado
Clasificación