scanf详解

        在C语言中scanf作为重要的输入操作函数,对于熟悉C语言有重要意义。

        1.头文件

scanf和printf函数一样,都被声明在头文件stdio.h里,因此在使用scanf函数时要加上#include <stdio.h>。它是格式输入函数,即按用户指定的格式从键盘上把数据输入到指定的变量之中。

        2.格式

如:

#include<stdio.h>
int main()
{
	int a;
	scanf("%d", &a);
	return 0;
}

 也就是scanf(“格式”,地址);的形式,但是在VS2019等编译器上编译时会报错,此时只需要在程序第一行加上

#define _CRT_SECURE_NO_WARNINGS 1

就可以正常编译了。

在一些特殊情况如需要输入多个值

#include<stdio.h>
int main()
{
	int a,b;
	scanf("%d %d", &a,&b);
	return 0;
}

在窗口输入时也应该按照双引号中的格式进行输入,如上面这个程序的输入就需要输入一个整数+空格+整数

3.scanf的返回值

首先我们来看这个程序

#include<stdio.h>
int main()
{
	int a,b;
	int c=scanf("%d %d", &a,&b);
	printf("%d", c);
	return 0;
}

通过运行我们发现输入两个值后输出结果为2 

scanf返回值为读取到的输入值的个数,由此我们可以进一步延伸

当我们需要输入多组数据也就是一下子需要输入多个数时,我们可以根据scanf的返回值来进行一个循环的判断

#include<stdio.h>
int main()
{
	int a,b;
	while (scanf("%d %d", &a, &b) == 2)
	{
		printf("%d", a / b);
	}
	return 0;
}

 如果输入的数据个数不是2,那么循环结束,同理也能用EOF文件结束标志来判断,scanf如果遇到了EOF(即你输入的是ctrl+z),返回的是-1,如果读取发生错误,就会返回0。

#include<stdio.h>
int main()
{
	int a,b;
	while (scanf("%d %d", &a, &b) !=EOF)
	{
		printf("%d", a / b);
	}
	return 0;
}

这里注意,在编译器输入Ctrl+z即可跳出while循环

由此来实现多组数据输入

4.scanf结束数据输入

scanf()函数接收输入数据时,遇以下情况结束一个数据的输入:

(1)遇空格、“回车”、“跳格”键;

(2)遇宽度结束;

(3)遇非法输入。

如果想输入一段带空格的字符串,我们可以用scanf("%[^\n]",str];来读取含空格的字符串或者直接用gets();函数也可以达到一样的效果,^可以理解为。 ^\n就表示非\n,即遇到非\n的字符就读入,即他可以读入直到你输入一个回车前的所有字符(包括空格)。所以scanf里面最好不要使用\n和空格。

‘’return 0
关注 关注
  • 15
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
scanf用法详解
01-31
scanf用法详解
9.day2-scanf详解.avi.baiduyun.downloading
05-12
王道基础C语言教学视频,快速掌握C语言编写技能,视频非常基础,之前参加王道训练营的时候学习的资料,希望能帮助一些吃语言小白学习。
格式字符串
耘田
10-20 1968
格式字符串的一般形式为:     %[*][输入数据宽度][长度]类型 ​其中有方括号[]的项为任选项。各项的意义如下。 ​1) 类型表示输入数据的类型,其格式符和意义如下表所示。 格式 字符意义: d  输入十进制整数 o  输入八进制整数 x  输入十六进制整数 u  输入无符号十进制整数 f或e   输入实型数(用小数形式或指数形式) c  输入单个字符 s  输入字...
scanf函数从入门到精通
最新发布
KevinRay_0854的博客
07-23 3196
从函数的简单使用到进阶,介绍了scanf函数在使用过程中遇到的各种问题,以及使用scanf进行输入数据的简单处理。
scanf 详解
liliangbao的专栏
04-17 2095
总是碰到关于scanf函数使用的问题,在此自己好好学习一下,并与大家一起分享~ scanf 原型:# include ;int scanf( const char *format, ... ); format 指向的控制串由以下三类字符组成: ● 格式说明符 ● 空白符 ● 非空白符    控制串中的空白符使 scanf() 在输入流中跳过一个或多个空白行。空白符可以是空格(s
scanf() 详解
pqw1157的专栏
11-28 810
scanf原型:参见《C语言大全》和K&C# include ;int scanf( const char *format, ... ); 函数 scanf() 是从标准输入流 stdin 中读内容的通用子程序,可以读入全部固有类型的数据并自动转换成机内形式。    在 C99 中,format 用 restrict 修饰。format 指向的控制串由以下三类字符组成:       ● 格式
C语言scanf详解
07-01
网上找来的,我不是原创。注意 , 键盘缓冲区 与输入有着密切的关系,并且,类型匹配对输入也极为重要!!
C语言printf与scanf详解:输出控制符与输入指南
**printf函数详解** `printf`函数是C语言中的标准输出函数,用于格式化输出数据到终端或文件。它的基本格式如下: ```c printf("输出格式", 输出参数); ``` 其中,"输出格式"是由各种输出控制符组成的字符串,用于...
C语言格式输入函数scanf()详解.txt
11-09
C/C++语言格式输入函数scanf()详解
scanf函数详解
qq3354236979的博客
07-08 345
转载自博客园 wind飘雪的博客 https://www.cnblogs.com/windpiaoxue/p/9184194.html (1)简介: scanf函数是c语言当中非常重要的格式化输入函数 其函数原型为:int scanf(const char *format, ...); 其函数返回值:成功格式化解析的个数 其调用格式为:scanf("<格式化字符串>", &...
C语言指南】scanf()函数详解
2302_78391795的博客
01-06 6897
scanf()函数是格式输入函数,即按用户指定的格式从键盘上把数据输入到指定的变量之中。对于scanf()函数的掌握是使用C语言的一门必修课
scanf() 函数详解
JIANJIANJIAN1111的博客
04-13 1728
1、基本信息 函数名:scanf 功 能:执行格式化输入 用 法:int scanf(char *format[,argument,...]); scanf()函数是通用终端格式化输入函数,它从标准输入设备(键盘) 读取输入的信息。可以读入任何固有类型的数据并自动把数值变换成适当的机内格式。 其调用格式为: scanf("<格式化字符串>",<地址表>...
scanf函数详解(保姆级讲解)以及使用时需注意的细节
热门推荐
2201_75998194的博客
05-28 2万+
scanf()是C语言中的一个输入函数。与printf函数一样,都被声明在头文件stdio.h里,因此在使用scanf函数时要加上#include <stdio.h(在有一些实现中,printf函数与scanf函数在使用时可以不使用预编译命令)它是格式输入函数,即按用户指定的格式从键盘上把数据输入到指定的变量之中。(下图是来自cplusplus.com中对scanf函数的解释)
C语言scanf函数详细解释
小小鸟
05-22 1万+
函数名: scanf  功 能: 执行格式化输入  用 法: int scanf(char *format[,argument,...]); scanf()函数是通用终端格式化输入函数,它从标准输入设备(键盘) 读取输入的信息。可以读入任何固有类型的数据并自动把数值变换成适当的机内格式。 其调用格式为:      scanf("",); scanf()函数返回成功赋值的数据项
C语言scanf函数的详解
蓝色月光
05-28 584
scanf() 函数是所有C语言学习者在学习C语言过程中所遇到的第二个函数(第一个函数是printf(),Brian W.Kerninghan & Dennis M.Ritchie的“hello,world”程序基本上是所有的C语言学习者第一个范例),所以scanf()函数应当是C学习者能熟练运用的一个函数,但有很多初学者对此函数不能很好的运用,在实际编程中错误使用scanf()函数,导至程序产生
程序设计基础 scanf详解
Schordinger的博客
12-31 559
虽说这个一般不该归到算法里面,但是毕竟基础程序设计里用的还是比较多。尤其是今天在用C语言读字符串的时候,发现了很有趣的现象,怎么去处理最后一个回车。先占个坑,明天总结一下这个问题。
C语言scanf 详细介绍
稻草人
05-31 2078
里面会放置占位符(与printf()的占位符基本一致),告诉编译器如何解读用户的输入,需要提取的是数据是什么类型。占位符会忽略起首的空格,从 - 处开始处理,读取到 -13 停下来,因为后面的 . 不属于整数的有效字符。解读用户输入时,会从上一次解读遗留的第一个字节开始,直到读完缓存,或者遇到第一个不符合条件的字符为止。例子中,如果用户输入2020-12-12,就会正确解读数据,但是如果输入2020/12/12,处理用户输入的原理是,用户的输入先放入缓存,等到按下回车键后,按照占位符对缓存进行解读。
写文章

热门文章

  • scanf详解 28888
  • char类型的大小范围 6204
  • C++ STL--vector详解 2293
  • C++引用& 以及 引用的权限的扩大与缩小 1093
  • C++类和对象 947

最新评论

  • C++ static成员

    CSDN-Ada助手: 恭喜您在博客中分享了关于C++ static成员的知识,内容讲解清晰易懂,让读者受益匪浅。希望您能继续保持创作的热情和耐心,不断提升自己的写作水平。下一步可以考虑深入探讨C++中其他特性或者与static成员相关的高级用法,让读者更全面地了解这门编程语言。期待您的下一篇作品!

  • C++类和对象

    CSDN-Ada助手: 恭喜您发布了关于C++类和对象的博客,内容相当有深度,对于学习C++的读者来说必定受益匪浅。希望您能继续保持创作热情,探索更多有趣的主题,比如C++中的继承和多态性等,这些内容也是很多读者关注的焦点。期待您的下一篇博客,谢谢您的分享!愿您创作愈发精彩!

  • C++类和对象中单参数构造函数的隐式类型转化

    CSDN-Ada助手: 恭喜作者发布了新的博客!对于C++类和对象中单参数构造函数的隐式类型转化这个主题,您阐述得非常清晰和详细。建议下一步可以深入探讨多参数构造函数的使用方法,或者是介绍一些高级的C++特性,让读者能够更全面地了解这门语言。期待作者的继续努力和创作!祝您越来越好。

  • C++日期类的实现-运算符重载

    CSDN-Ada助手: 不知道 Java 技能树是否可以帮到你:https://edu.csdn.net/skill/java?utm_source=AI_act_java

  • scanf详解

    知堂织韵: %*u是个什么东西啊?

最新文章

  • C++ getline
  • C++ string::find
  • C++ STL--vector详解
2024年8篇
2023年12篇
2022年3篇

目录

目录

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家十堰卡通玻璃钢雕塑公司河南玻璃钢浮雕雕塑定制岑溪玻璃钢游乐场门头雕塑北流玻璃钢雕塑公司世界最好的商场美陈 比利时长沙玻璃钢雕塑采购白银卡通玻璃钢雕塑设计展旭玻璃钢雕塑青浦区镜面玻璃钢雕塑诚信企业陇南植物玻璃钢雕塑价格玻璃钢艺术雕塑哪家买金华玻璃钢雕塑工艺品厂家万圣节商场美陈布置玻璃钢艺术品雕塑教程玻璃钢动物牛雕塑厂家电话烟台玻璃钢雕塑哪家好营口玻璃钢雕塑联系方式玻璃钢花盆方形泡沫雕塑翻模玻璃钢玻璃钢广场卡通雕塑厂家玻璃钢桃子雕塑制造厂家顺义节日商场美陈临沂人物玻璃钢雕塑价格西安黑龙江玻璃钢雕塑玻璃钢广场雕塑设计公司张家界人物玻璃钢雕塑安装森林风商场美陈户外玻璃钢雕塑源头好货商场美陈吊饰厂家玻璃钢喷水壶雕塑香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化