大家好,今天小编关注到一个比较有意思的话题,就是关于c语言scanf错误的问题,于是小编就整理了2个相关介绍c语言scanf错误的解答,让我们一起看看吧。

  1. C语言,可能是输入语句scanf使用错误,但不会改?
  2. was not declared in this scope怎么解决?

C语言,可能是输入语句scanf使用错误,但不会改?

因为情况3里,1、你第一次输入50时,程序执行到while那一行,50被赋值给base,并进入循环。

c语言scanf错误-c语言scanf错误怎么解决
(图片来源网络,侵删)

2、运行到scanf("%*s");这时候你要输入一个字符串然后被忽略掉。

3、才运行到输出提示那一步。

c语言scanf错误-c语言scanf错误怎么解决
(图片来源网络,侵删)

4、回到了while那一行,你输入一个5,然后正确输出5。这种问题自己debug走一下就好了,应该很简单的吧。。。——————————萧大的意思应该是不要手工输测试数据,但是提交到oj上的代码就是要用到scanf,没办法呀。

这时候有一个技巧是用freopen去重定向输入,把要输入的数据写在一个文件里就好了。这样平时测试不用手工输数据,提交时只要注释掉freopen这行代码就行了。

c语言scanf错误-c语言scanf错误怎么解决
(图片来源网络,侵删)

was not declared in this scope怎么解决?

“was not declared in this scope”是一个错误信息,在编译的时候会遇到。其含义为标识符在其出现的地方是未被定义的。出现该错误的时候,会同时把未定义的变量名显示出来。比如如下程序:int main(){ printf("%d",i);//这个i是没定义的。}就会显示一个'i' was not declared in this scope或者类似的错误信息出来。对于变量和函数,如果未定义都会出现这个错误。该错误出现时,需要根据出现该错误的行号及名称,查找对应名称变量或函数的作用,一般有如下几种可能:

1 忘记定义。写代码的时候疏忽了,导致一些变量直接使用但没有定义。只要对应定义相应的函数或变量即可。

2 拼写错误。写代码的时候,敲错了字符。比如sum敲成了Sum, ***erage敲成***erge等。对应修改即可。

3 作用域不正确。在超出变量和函数的作用域部分使用了该变量或函数。需要通过定义位置,或增加声明的手段,加大变量的作用域使其包含引用位置。

到此,以上就是小编对于c语言scanf错误的问题就介绍到这了,希望介绍关于c语言scanf错误的2点解答对大家有用。