资讯   |   开发   |   选机中心   |   产品大全 | IBM | 惠普 | 联想 | 戴尔 | 苹果 | 神舟
更多: | 华硕 | 明基 | 方正 | 紫光 | TCL | 夏新 | 联宝 | 宏碁 | 七喜 | 长城 | 清华同方 | 海尔 | 三星 | 东芝 | 索尼 | 富士通 | LG | 技术 | ddnoon
当前位置:笔记本 > 软件开发 >
Advertisement
文章正文

小鸟求救~~阶乘

类型:转载   责任编辑:asp.net   日期:2007/05/23


热门软件下载:


   

我写的求阶乘,但无法运行。DX看看怎么回事。  
  #   include<iostream>  
  using   namespace   std;  
  int   main()  
  {  
  int   n;  
  int   My_fun[n];  
          int   i;  
  for(i=0;i<n;i++)  
          My_fun[i]=i*My_fun[i-1];  
   
  cout<<i<<"   i=   "<<My_fun[i]<<"\n";  
  cin<<n;  
  cin.get();  
  cin.get();  
  return   0;  
  }

网友回答:

发表者:insulator

My_fun[i]=i*My_fun[i-1];  
  当i=0时My_fun[i-1]未定义。

发表者:ftkghost

int   n;  
  int   My_fun[n];       ------------->不能这样声明数组啊  
  n又不是const   int

发表者:fire_up

ftkghost说的对,在编译期间就需要指出数组的大小,不能在运行时输入一个数字来指定大小,c++不支持。

发表者:Mi_Bo

求阶乘吗?最简单的办法是:  
  #include<iostream.h>  
  main()  
  {  
  long   s=1;        
  int   n;  
        cin>>n;  
        for(int   i=1;i<=n;i++)  
            s*=n;  
  cout<<s<<endl;  
  }

发表者:copygirl

递归最好了:  
  main()  
  {  
  int   n;  
  int   rel;  
  cin>>n;  
  rel=dd(n);  
  cout<<rel<<endl;  
  }  
  dd(int   n)  
  {  
  int   res;  
  if(n==1)  
  return   res;  
  else  
  res*=dd(n-1);  
  }


 

 
热门推荐笔记本: 索尼笔记本
相关文章:
webmaster:popbb@126.com   最佳浏览:1024X768 MSIE
©2007 popbb.net All Rights Reserved