相信许多C迷们无论是自学c++,还是在培训机构,输入输出基本上都是习惯性的使用标准输入输出库函数——<iostream>,cin>>和cout<<想必大家都很熟悉。虽然这两个输入输出函数从最初的c++1.0版本就在一直陪伴着我们,但是随着时间的推移,scanf与printf语句的出现,完美解决了cin
和cout语句时间、空间复杂度飙升的问题。平时编个游戏的时候cin和cout语句也没什么,但是在NOIP的时候,时间复杂度就成了一大问题。所以,今天火龙果就来给大家分享一下,scanf语句的妙用。
---------------------------------------------------华丽的分割线------------------------------------------------------------
@经典八炮:谢谢你在【阅读程序】时提出的问题,本人其实也习惯用cout输出,所以比较不适应
正文:
1.scanf语句和printf语句都需要使用cstdio这个头文件,兼容性版本(4.9以下)c++的万能头文件中不包含这个头文件;
#include<cstdio>
2.若需要使用scanf语句输入n个数据,必须前面写n个“%d”,并与变量用逗号隔开,变量前面要加&
int a,b;
scanf("%d%d",&a,&b);
3.若需要保留n位小数,不需要用double类啦,只需要在scanf中加入一个“%. n lf”,就可以啦
int a;
scanf("%.3lf",&a); //保留三位小数
printf主要的用法没有什么技巧,主要就是把cout换成了printf,把<<换成了()罢了。
其他\n,\t等的用法都大同小异。
下一篇,我将给大家介绍,让无数考生挂零的人工评分系统的标配:freopen()函数。
886~