新微赢技术网

标题: 搞不懂 [打印本页]

作者: 别问我是谁    时间: 2009-11-4 02:31
标题: 搞不懂
Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
                  T otal Submission(s): 5900    Accepted Submission(s): 1368

Problem Description
Given an integer N(0 ≤ N ≤ 10000), your task is to calculate N!



Input
One N in one line, process to the end of file.



Output
For each N, output N! in one line.



Sample Input
1
2
3


Sample Output
1
2
6



我的程序:

#include "iostream"
using namespace std;
long fac(int n)
{
long f;
if (n==0||n==1)    f=1;
else f=fac(n-1)*n;
return f;
}
int main()
{
    int N;
    0<=N&&N>=10000;
    long y;
    while(cin>>N)
    {
        
        y=fac(N);
        cout<<y<<endl;
    }
    return 0;
}
我们学校网页里面编程练习的题,为什么在编译器上运行没问题,在那里提交就说wrrong  anwser呢??
作者: √我爱你    时间: 2009-11-4 02:31
0<=N&&N>=10000;这句是干什么的,N没有初始化,运行时这句肯定报错,而且看不出它的目的.
会不会是if(0<=N&&N>=10000).不关怎么,N不赋值就拿来做运算,运行期会出错.




欢迎光临 新微赢技术网 (http://bbs.weiying.cn/) Powered by Discuz! X3.2