例如,当我输入2为num1和3为num2,我希望得到8输出一旦我输入第二个数字。但是,程序希望我输入一个整数,而我只输入一个像242这样的随机数,它仍然输出8,这意味着它不会影响结果。所以我的问题是为什么会有第三个输入? 谢谢你的帮助!出现一个额外的输入
#include "stdafx.h"
int Power (int num1, int num2);
int main()
{
int a, b;
puts ("Enter two numbers, a and b:\n");
scanf ("%i\n", &a);
scanf ("%i\n", &b);
printf ("%i\n", Power(a, b));
return 0;
}
int Power (int num1, int num2)
{
int sum=1;
for (int i=1; i<=num2; i++){
sum= sum*num1;
}
return sum;
}
谢谢!这些信息非常有用。 –
即使应该删除一个'scanf'。 'scanf(“%i%i”,&a,&b)'是所有必需的。 – AnT
此外,注意'%i'格式可能会给你比你真正需要的更多。我会说'%d'在这方面会更有意义。用户可能会惊讶地发现'023'实际上被解释为'19'。 – AnT