Home  >  Article  >  Backend Development  >  In-depth understanding of the input format control of the scanf function in C language

In-depth understanding of the input format control of the scanf function in C language

WBOY
WBOYOriginal
2024-02-18 11:49:07774browse

In-depth understanding of the input format control of the scanf function in C language

To thoroughly understand the input format control of the scanf function in C language, specific code examples are required

In C language, the scanf function is a commonly used input function, which allows We read data from user input and store it in variables. In order to better control the input format, the scanf function provides input format control characters, through which we can specify the input data type and some specific format requirements.

Below we use some specific code examples to explain the input format control of the scanf function in detail.

  1. Input an integer

First, let’s look at a simple example of how to use the scanf function to read an integer from user input and store it in a variable .

#include <stdio.h>

int main() {
    int num;
    printf("请输入一个整数:");
    scanf("%d", &num);
    printf("你输入的整数是:%d
", num);
    return 0;
}

In this example, we use "%d" as the format control character, which means that we expect to enter a decimal integer. Among them, "&num" represents the address of the variable num, and the scanf function will store the integer entered by the user in the memory corresponding to this address.

  1. Input floating point numbers

Next, we demonstrate how to use the scanf function to input floating point numbers.

#include <stdio.h>

int main() {
    float num;
    printf("请输入一个浮点数:");
    scanf("%f", &num);
    printf("你输入的浮点数是:%f
", num);
    return 0;
}

In this example, we use "%f" as the format control character, indicating that we expect to input a floating point number. Similarly, "&num" represents the address of the variable num, and the scanf function will store the floating point number entered by the user in the memory corresponding to this address.

  1. Input characters

In addition to integers and floating point numbers, we can also use the scanf function to enter characters.

#include <stdio.h>

int main() {
    char ch;
    printf("请输入一个字符:");
    scanf(" %c", &ch); // 注意%c前的空格符,用于忽略之前的换行符或空格
    printf("你输入的字符是:%c
", ch);
    return 0;
}

In this example, we use "%c" as the format control character to read a character. It should be noted that we added a space character before %c. The function of this space character is to ignore the previous newline character or space. Doing this ensures that we read the actual characters entered by the user.

  1. Input a string

Finally, we will demonstrate how to use the scanf function to input a string.

#include <stdio.h>

int main() {
    char str[100];
    printf("请输入一个字符串:");
    scanf("%s", str);
    printf("你输入的字符串是:%s
", str);
    return 0;
}

In this example, we use "%s" as the format control character to read a string. We define a character array str to store the string entered by the user. It should be noted that we did not use the "&" operator after the format control character "%s" because the array name already represents the address in C language.

Through the above examples, we have a deeper understanding of the input format control of the scanf function in C language. Different format control characters can be used to read different types of data, and we can also use some special characters to handle whitespace characters in the input. Mastering these skills can handle user input more flexibly, making our program performance more powerful and robust.

The above is the detailed content of In-depth understanding of the input format control of the scanf function in C language. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn