小递归,运行为何会报错?
#include "stdio.h"long recursion(int n);
void main()
{
int n;
long result;
printf("input a integer num: \n");
scanf("%d", &n);
result = recursion( n );
printf("%d! = %ld\n", n, result);
}
long recursion(int n)
{
long temp_result;
if( n<0 )
{
printf("n < 0,input error!\n");
}
else if( n == 0 || n ==1 )
{
temp_result = 1;
}
else
{
temp_result = resursion( n-1 ) * n;
}
return temp_result;
}
以上代码跟鱼视频的一模一样,为何编译能过,但不能运行?
偶太菜了,找不出毛病,有劳各路大神拔刀相助,{:7_166:}{:7_181:}
-------------------Configuration: recursion - Win32 Debug--------------------
Linking...
recursion.obj : error LNK2001: unresolved external symbol _resursion
Debug/recursion.exe : fatal error LNK1120: 1 unresolved externals
执行 link.exe 时出错.
recursion.exe - 1 error(s), 0 warning(s)
temp_result = resursion( n-1 ) * n;这句应该是
temp_result = recursion( n-1 ) * n; 如果楼上是对的,你编译应该过不了才对,可能是编译器找不到你的程序入口。 以下是正确的代码:
#include <stdio.h>
long recursion(int n);
void main()
{
int n;
long result;
printf("input a integer num: \n");
scanf("%d", &n);
result = recursion( n );
printf("%d! = %ld\n", n, result);
}
long recursion(int n)
{
long temp_result;
if( n<0 )
{
printf("n < 0,input error!\n");
}
else if( n == 0 || n ==1 )
{
temp_result = 1;
}
else
{
temp_result = recursion( n-1 ) * n; //这里是recursion而不是resursion
} //写代码可要注意哦!^_^!
return temp_result;
}
呵呵!你只写错了一个字母! resursion 和recursion 一个字母只差,一开始写程序的时候要小心,写程序的能力是靠写出来的,可以经常写,遇到错误多留心,下次遇到了同样的错误就可以轻松解决了。加油! #include "stdio.h"
long recursion(int n);
void main()
{
int n;
long result;
printf("input a integer num: \n");
scanf("%d", &n);
result = recursion( n );
printf("%d! = %ld\n", n, result);
}
long recursion(int n)
{
long temp_result;
if( n<0 )
{
printf("n < 0,input error!\n");
}
else if( n == 0 || n ==1 )
{
temp_result = 1;
}
else
{
temp_result =recursion( n-1 ) * n;
}
return temp_result;
}
打错了变量名 夜神月0_0 发表于 2014-3-20 00:04 static/image/common/back.gif
resursion 和recursion 一个字母只差,一开始写程序的时候要小心,写程序的能力是靠写出来的,可以经常写 ...
说的很棒,好多时候就是不熟练 machimilk 发表于 2014-3-19 23:11 static/image/common/back.gif
temp_result = resursion( n-1 ) * n;这句应该是
temp_result = recursion( n-1 ) * n;
神啊,偶不得不去买块超级无敌大豆腐来撞一下{:7_163:},原来粗心一直是偶的死穴吖{:5_99:}
不过,非常感谢,终于可以运行,和调试了,嘻嘻 夜神月0_0 发表于 2014-3-20 00:04 static/image/common/back.gif
resursion 和recursion 一个字母只差,一开始写程序的时候要小心,写程序的能力是靠写出来的,可以经常写 ...
嗯,领教领教{:5_110:}
页:
[1]