梦想丶探索者 发表于 2020-9-13 20:35

C语言有关问题(已解决,多谢各位大佬)

本帖最后由 梦想丶探索者 于 2020-9-13 21:29 编辑

搞不懂这个为什么这样,大佬们,求助!
不管录入一个大于还是小于99的,都是输出这结果{:301_973:}


问题好像是sacn_f没有录入我键盘输入的数,这就奇怪了
另外VS2019用不了scanf,会报错

luanshils 发表于 2020-9-13 20:46

本帖最后由 luanshils 于 2020-9-13 20:50 编辑

先看看代码,泡杯茶
学习了scanf_s,边界检测

梦想丶探索者 发表于 2020-9-13 20:49

luanshils 发表于 2020-9-13 20:46
先看看代码,泡杯茶
没看懂scanf_s是什么函数

我注释了getchar()还是一样,都排除了,实在搞不懂是什么原因我才来问{:301_972:}

luanshils 发表于 2020-9-13 20:50

我用vs编译看看

我是孙伯 发表于 2020-9-13 20:54

目测scanf用法不对,应该是printf("请输入a:");scanf("%d",&a);吧。

我是孙伯 发表于 2020-9-13 20:55

按图上scanf的用法,你要输入
请输入a: 100
这样可能变量a才会得到100吧

梦想丶探索者 发表于 2020-9-13 20:55

我是孙伯 发表于 2020-9-13 20:54
目测scanf用法不对,应该是printf("请输入a:");scanf("%d",&a);吧。

不是这问题

luanshils 发表于 2020-9-13 20:56

我是孙伯 发表于 2020-9-13 20:54
目测scanf用法不对,应该是printf("请输入a:");scanf("%d",&a);吧。

我查了一下,远古版本确有scanf_s,这个函数, 有对边界进行检测

我是孙伯 发表于 2020-9-13 20:57

梦想丶探索者 发表于 2020-9-13 20:55
不是这问题

最简单的,你直接printf("%d",a);输出100,那我就不知道咋回事了。如果输出0或者乱码,就是scanf用法不对。

yk2014 发表于 2020-9-13 20:57

后面再输出a看看a的值是多少,或者调试啊
页: [1] 2 3 4
查看完整版本: C语言有关问题(已解决,多谢各位大佬)