有关标准输入输出scanf printf
作者:
哈基咪
,
2020-03-14 15:56:25
,
所有人可见
,
阅读 1040
做了一些题之后才发现并不是cin cout是最方便的东西
原来scanf printf这种的速度是比cin cout 快的 所以总结一下(供自己以后看)
① 数据规模较大的时候建议用scanf printf来读入和输出 (节省时间)
② scanf之所以是标准输入,意思是可以格式化输入 例如:
ACWING 1229.日期问题 的输入格式为式是”AA/BB/CC” ,做这个题需要把AA BB CC 提取出来判断是否符合题意,我一开始想的是把它们分别提取出来,再用字符串转换成数字,后来看了别人的做法以后才get到scanf函数的精妙之处
scanf("%d\%d\%d",&a,&b,&c);
//这句话就可以 直接把abc提取出来,而且存成整数
③ printf 可以控制格式化的输出
还是拿acwing 1229来举例, 题目中最后要输出日期XXXX-XX-XX 可是在正常输出整数的时候不满10会输出一位 例如输出2019-3-8 其实题目要求的应该是2019-03-08 这样就有点问点
printf("%d-%02d-%02d",year,month,day);
//这样就可以解决这个问题 02d表示 不足两位则前面补0 同理 03d表示不足3位补0
心得的话,感觉看似普通的东西也有自己没掌握的地方,还是要多积累