C Entrada / Salida: printf () y scanf ()

En este tutorial, aprenderá a usar la función scanf () para recibir información del usuario y la función printf () para mostrar la salida al usuario.

Salida C

En la programación C, printf()es una de las principales funciones de salida. La función envía la salida formateada a la pantalla. Por ejemplo,

Ejemplo 1: Salida C

 #include int main() ( // Displays the string inside quotations printf("C Programming"); return 0; )

Salida

 Programación en C

¿Cómo funciona este programa?

  • Todos los programas C válidos deben contener la main()función. La ejecución del código comienza desde el inicio de la main()función.
  • El printf()es una función de biblioteca para enviar la salida con formato de la pantalla. La función imprime la cadena entre comillas.
  • Para usar printf()en nuestro programa, necesitamos incluir el stdio.harchivo de encabezado usando la #include declaración.
  • La return 0;declaración dentro de la main()función es el "Estado de salida" del programa. Es opcional.

Ejemplo 2: Salida entera

 #include int main() ( int testInteger = 5; printf("Number = %d", testInteger); return 0; )

Salida

 Número = 5

Usamos el %despecificador de formato para imprimir inttipos. Aquí, el %dinterior de las citas será reemplazado por el valor de testInteger.

Ejemplo 3: salida flotante y doble

 #include int main() ( float number1 = 13.5; double number2 = 12.4; printf("number1 = %f", number1); printf("number2 = %lf", number2); return 0; )

Salida

 número1 = 13.500000 número2 = 12.400000

Para imprimir float, usamos el %fespecificador de formato. De manera similar, usamos %lfpara imprimir doublevalores.

Ejemplo 4: Imprimir caracteres

 #include int main() ( char chr = 'a'; printf("character = %c", chr); return 0; ) 

Salida

 personaje = a 

Para imprimir char, usamos el %cespecificador de formato.

Entrada C

En la programación en C, scanf()es una de las funciones más utilizadas para recibir información del usuario. La scanf()función lee la entrada formateada de la entrada estándar, como los teclados.

Ejemplo 5: entrada / salida de números enteros

 #include int main() ( int testInteger; printf("Enter an integer: "); scanf("%d", &testInteger); printf("Number = %d",testInteger); return 0; )

Salida

 Ingrese un número entero: 4 Número = 4

Aquí, hemos utilizado un %despecificador de formato dentro de la scanf()función para tomar la intentrada del usuario. Cuando el usuario ingresa un número entero, se almacena en la variable testInteger.

Fíjate que lo hemos usado por &testIntegerdentro scanf(). Es porque & testInteger obtiene la dirección de testInteger, y el valor ingresado por el usuario se almacena en esa dirección.

Ejemplo 6: entrada / salida flotante y doble

 #include int main() ( float num1; double num2; printf("Enter a number: "); scanf("%f", &num1); printf("Enter another number: "); scanf("%lf", &num2); printf("num1 = %f", num1); printf("num2 = %lf", num2); return 0; )

Salida

 Ingrese un número: 12.523 Ingrese otro número: 10.2 num1 = 12.523000 num2 = 10.200000

Utilizamos %fy %lfespecificador de formato de floaty doublerespectivamente.

Ejemplo 7: E / S de caracteres C

 #include int main() ( char chr; printf("Enter a character: "); scanf("%c",&chr); printf("You entered %c.", chr); return 0; ) 

Salida

 Ingrese un carácter: g Ingresó g 

Cuando el usuario ingresa un carácter en el programa anterior, el carácter en sí no se almacena. En su lugar, se almacena un valor entero (valor ASCII).

Y cuando mostramos ese valor usando %cformato de texto, se muestra el carácter ingresado. Si usamos %dpara mostrar el carácter, se imprime su valor ASCII.

Ejemplo 8: Valor ASCII

 #include int main() ( char chr; printf("Enter a character: "); scanf("%c", &chr); // When %c is used, a character is displayed printf("You entered %c.",chr); // When %d is used, ASCII value is displayed printf("ASCII value is %d.", chr); return 0; )

Salida

Ingrese un carácter: g Ingresó g. El valor ASCII es 103.

Valores múltiples de E / S

A continuación, le mostramos cómo puede tomar varias entradas del usuario y mostrarlas.

 #include int main() ( int a; float b; printf("Enter integer and then a float: "); // Taking multiple inputs scanf("%d%f", &a, &b); printf("You entered %d and %f", a, b); return 0; )

Salida

 Ingrese un entero y luego un flotante: -3 3.4 Ingresó -3 y 3.400000 

Especificadores de formato para E / S

Como puede ver en los ejemplos anteriores, usamos

  • %d para int
  • %f para float
  • %lf para double
  • %c para char

Aquí hay una lista de los tipos de datos C de uso común y sus especificadores de formato.

Tipo de datos Especificador de formato
int %d
char %c
float %f
double %lf
short int %hd
unsigned int %u
long int %li
long long int %lli
unsigned long int %lu
unsigned long long int %llu
signed char %c
unsigned char %c
long double %Lf

Articulos interesantes...