你的scanf到底取的是个啥

打了一个最简单取数据的程序,但结果发现很多细节的问题

如图所示,输入两个数据,输出两个数据,但surprise就是为什么a是对的,b永远都是1??

问题在于scanf语句里面的%d的格式,图一是%d%d(不带空格),图二是%d, %d(图二逗号后面跟了个空格)

但是在运行的cmd框中,我输入的格式却是5577 56(带了一个空格)

意思是,我的输入格式和我编写的格式不一致,r7k也识别不出来

还有就是格式问题上,两个%d%d连着编写在源码中,在cmd输入的时候两个数字之间是可以打空格的

 

总结:1.scanf的时候一定要看好格式,按照自己编写的格式来输入,不然读出来的数就很奇怪了(1?0?)

           2.每次修改完程序都要编译一次再运行,直接运行的话就是它实际运行的是上次你未修改的程序所运行的exe(搞得自己码对了也以为是错的)

posted @ 2020-10-09 21:32  FoolStack  阅读(208)  评论(2)    收藏  举报