scanf("format string", &variable1, &variable2, ...);其中,"format string" 是一个格式化字符串,用于指定要读取的数据类型和数据格式,&variable1、&variable2 等是要读取数据的变量名和地址。在读取时, scanf 函数会根据格式化字符串指定的格式来解析输入,将解析的结果存储到指定的变量中。
char str[20]; scanf("%s", str);在读取字符串时,scanf 函数将一直读取字符,直到遇到空格、制表符或换行符为止。因此,如果输入的字符串中包含空格或制表符,这些字符之后的内容将会被忽略。如果要读取包含空格或制表符的字符串,可以使用
%[^\n]
格式化字符串,它可以读取一行输入直到遇到换行符为止。#include <stdio.h> int main() { int num1, num2; printf("Enter two numbers: "); scanf("%d%d", &num1, &num2); int sum = num1 + num2; printf("The sum of %d and %d is %d\n", num1, num2, sum); return 0; }在这个程序中,我们定义了两个整数变量 num1 和 num2,然后使用 printf 函数输出提示信息,让用户输入两个数字。使用 scanf 函数读取用户输入的值,将其存储到 num1 和 num2 变量中。然后将 num1 和 num2 相加,将结果存储到 sum 变量中,并使用 printf 函数输出计算结果。
// 读取字符 char ch; scanf("%c", &ch); // 读取字符串(不含空格) char str[20]; scanf("%s", str); // 读取字符串(含空格) char str2[20]; scanf("%[^\n]", str2); // 读取浮点数 float f; scanf("%f", &f); // 读取指针 int *p; scanf("%p", &p);在使用 scanf 函数时,需要注意以下几点:
#include <stdio.h> #include <string.h> int main() { char str[20]; printf("Enter a string: "); scanf("%s", str); int len = strlen(str); printf("The length of %s is %d\n", str, len); return 0; }在这个程序中,我们定义了一个字符数组 str,使用 scanf 函数读取用户输入的字符串,然后使用 strlen 函数计算字符串的长度,并将结果输出。
本文链接:http://task.lmcjl.com/news/6746.html