scanf函数简单讲解

在C语言中,scanf函数用来接收控制台输入的数据,包括数字、字符、汉字、字母等。其首先将从键盘或触摸屏接收到的数据存放到内存中,然后严格按照scanf函数中""的内容将相应的数据存到""后面的地址中(如&a是将相应的数据存到以&a为地址的内存中)。scanf函数中的""内容分为非格式控制符(如符号等)和格式控制符(如%d、%c、%f、%lf等)。非格式控制符必须原样输入(\n的输入不是按Enter键,而是输入\n),格式控制符会按%后面的内容将数据存到""后面的地址中。注意在输入符号时,代码为英文的非格式控制符在控制台输入时必须为英文输入,否则会出错。因为中文的输入几乎为两个字节的数据(包括字符),而英文的输入几乎为一个字节的数据,英文代码用中文输入只会截取其中的第一个字节的内容,后面的内容存到下一个非格式控制符或格式控制符。

原文地址:https://www.cnblogs.com/nylglqx/p/9695304.html

时间: 2024-11-06 09:37:39

scanf函数简单讲解的相关文章

scanf函数详细讲解

(1)简介: scanf函数是c语言当中非常重要的格式化输入函数 其函数原型为:int scanf(const char *format, ...); 其函数返回值:成功格式化解析的个数 其调用格式为:scanf("<格式化字符串>", <参量表>); (2)转换说明: 转换格式为:%[*][宽度][类型长度]类型 除了最后的类型之外都是可选的字段 转换修饰符 修饰符 意义 * 滞后赋值:示例:"%*d" digit(s) z最大字段宽度:在

C/C++ scanf函数中%s和%c的简单区别

首先声明:在键盘中敲入字符后,字符会首先保存在键盘缓冲区中供scanf函数读取(scanf,getchar等函数是读取缓冲区,getch函数是读取的控制台信息,即为直接从键盘读取).另外特别注意键盘上敲入回车实际为"\r\n",但存储到缓冲区时候会舍弃'\r'而只存储\n.例如我们敲入字符"12345回车",缓冲区内存储的为"12345\n". 文章中"_"代表空格 代码: char *s; scanf("%s&qu

黑马程序员————C语言基本语法(关键字、标识符、注释符、变量、Scanf函数)

第一讲 关键字 1.什么是关键字? 1) 关键字就是C语言提供的有特殊含义的符号,也叫做“保留字” 2) C语言一共提供了32个关键字,这些关键字都被C语言赋予了特殊含义 C语言关键字 auto局部变量(自动储存) break 无条件退出程序最内层循环 case   switch 语句中选择项 char  单字节整型数据 const  定义不可更改的常量值 continue 中断本次循环,并转向下一次循环 default switch 语句中的默认选择项 do  用于构成do.....while

【C语言】05-printf和scanf函数

一.printf函数 这是在stdio.h中声明的一个函数,因此使用前必须加入#include <stdio.h>,使用它可以向标准输出设备(比如屏幕)输出数据 1.用法 1> printf(字符串) printf("Hello, World!"); 输出结果是: 2> printf(字符串, 格式符参数) 1 // 使用常量作参数 2 printf("My age is %d\n", 26); 3 4 // 也可以使用变量 5 int ag

05-C语言scanf函数

一. 变量的内存分析 1. 字节和地址 为了更好地理解变量在内存中的存储细节,先来认识一下内存中的"字节"和"地址". 1> 内存以"字节为单位" 0x表示的是十六进制,不用过于纠结,能看懂这些数字之间谁大谁小就行了 2> 不同类型占用的字节是不一样的,数据越大,所需的字节数就越多 2. 变量的存储 1> 所占用字节数跟类型有关,也跟编译器环境有关 2> 变量实例 int b = 10; int a = 20; l 内存由

黑 马 程 序 员_视频学习总结&lt;c语言&gt;----02 printf和scanf函数、基本语句和运算、流程控制、函数、数组、字符串

---------------------- ASP.Net+Unity开发..Net培训.期待与您交流! ---------------------- 一.printf函数 1.在使用peintf函数前必须加入#include <stdio.h>,使用它可以向标准输出设备(比如屏幕)输出数据,其中使用格式是 printf(“字符串”) :或者 printf(“字符串”, 格式符参数): 2.常用的格式符及其含义如图所示 3.格式符还可以添加输出宽度 二.scanf函数 1.在使用scanf函

关于C中scanf()函数读取字符串的问题

1 #include <stdio.h> 2 3 int main(void) 4 { 5 char s_name[20]; 6 7 scanf("%s", s_name); 8 printf("Hello, %s!\n", s_name); 9 10 return 0; 11 } 对于这段简单的代码,如果输入一个名字如:Stephen,很容易知道,其输出为: Hello, Stephen! 这个很容易理解,但是输入更完整的名字如:Stephen Pra

学习笔记之05-printf和scanf函数

一.printf函数 这是在stdio.h中声明的一个函数,因此使用前必须加入#include <stdio.h>,使用它可以向标准输出设备(比如屏幕)输出数据 1.用法 printf("Hello, World!"); 输出结果是: 2> printf(字符串, 格式符参数) 1 // 使用常量作参数 2 printf("My age is %d\n", 26); 3 4 // 也可以使用变量 5 int age = 17; 6 printf(&

【黑马程序员】————scanf函数

变量的内存分析 1.内存寻址由大到小,优先分配内存地址比较大的字节给变量 2.变量越先定义,内存地址就越大 3.取得变量的地址:&变量名 4.输出地址:%p 5.一个变量一定先进行初始化,才能使用 查看内存地址: int a;printf("a的地址是:%p\n", &a); scanf函数 1.      简介 这也是在stdio.h中声明的一个函数,因此使用前必须加入#include <stdio.h>.调用scanf函数时,需要传入变量的地址作为参数,