C Programming Tutorial
In the C Programming Language, the scanf function reads a formatted string from the stdin stream.
Syntax
The syntax for the scanf function in the C Language is:
int scanf(const char *format, ...);
Parameters or Arguments
format
Describes the input as well as provides a placeholder to insert the formatted string. Here are a few examples:
Format | Explanation | Example |
---|---|---|
%d | Reads an integer | 10 |
%f | Reads a floating-point number in fixed decimal format | 10.500000 |
%.1f | Reads a floating-point number with 1 digit after the decimal | 10.5 |
%e | Reads a floating-point number in exponential (scientific notation) | 1.050000e+01 |
%g | Reads a floating-point number in either fixed decimal or exponential format depending on the size of the number | 10.5 |
Returns
The scanf function returns the number of characters that was read and stored. If an error occurs or end-of-file is reached before any items could be read, it will return EOF.
Required Header
In the C Language, the required header for the scanf function is:
#include <stdio.h>
Applies To
In the C Language, the scanf function can be used in the following versions:
- ANSI/ISO 9899-1990
scanf Example
Let's look at an example to see how you would use the scanf function in a C program:
/* Example using scanf by c programming*/ #include <stdio.h> #include <stdlib.h> #include <string.h> int main(int argc, const char * argv[]) { /* Define temporary variables */ char name[10]; int age; int result; /* Ask the user to enter their first name and age */ printf("Please enter your first name and your age.\n"); /* Read a name and age from the user */ result = scanf("%s %d",name, &age); /* We were not able to parse the two required values */ if (result < 2) { /* Display an error and exit */ printf("Either name or age was not entered\n\n"); exit(0); } /* Display the values the user entered */ printf("Name: %s\n", name); printf("Age: %d\n", age); return 0; }