C 比较两个INT,错误或Wierd End



i在代码中使用C :块和我在登录中进行了一个小游戏,因此,当我想比较来自scanf的变量(int)时工作。因此,在程序中,我用名称和PW登录,可以使用一个练习,例如:65 34,如果我输入任何数字,它将崩溃,如果我输入一封信,它会说" valasz罗斯"这意味着我的答案是不正确的,对匈牙利计划感到抱歉...

  • valasz helyes-答案是正确的
  • valasz rossz-答案是错误的
  • jatek!valaszolj a helyesen游戏!正确答案
  • bejelentkezes! - 登录
  • felhasznalonev -nickname
  • Jelszo -Pawsword
  • 在Meg Nem Regisztralt上!1 Regisztracio 2公里-U注册了!1登记2退出因此,我认为问题是在标准下(ANS == EO)代码:http://pastebin.com/e0abrx8y帮助104。感谢您的帮助,这对我来说将是很多!< 3

在第103行中,您需要通过scanf通过要存储该值的变量的地址,因此,而不是:

scanf("%d",ans);

您应该做:

scanf("%d", &ans);

您可能需要查看对Scanf的所有电话,

  1. 确保将指针传递给输出变量
  2. 检查返回值以验证您已成功阅读了用户的输入(例如,检测您是否期望一个数字并且用户输入一个单词)
  3. 使用c字符串(与printf和scanf函数一起使用的char阵列)代替c 字符串(std :: string,可与>>和<<< operators一起使用)

希望它有帮助。

问题在这里:

scanf("%d",ans);

'scanf()'存储值,因此它需要一个存储它们的地方。这是通过提供(指示)的地址来完成的在哪里存储值。

所以写:

scanf("%d",&ans);

它将解决您的问题。

最新更新