C语言的问题

bravegenius 2003-10-20 09:35:24
求一数的阶乘。出现如此错误,怎么回事?

行15) : error C2106: '=' : left operand must be l-value
行17) : error C2106: '=' : left operand must be l-value
#include <stdio.H>
int facs(int n);
void main()
{
int N;
printf("请输入N:");
scanf("d%",N);

cout<<facs(N);
cout<<endl;
}
int facs(int n)
{
facs(0)=1;出错行*********************************
for(int i=1;i<=n;i++)
facs(i)=i*facs(i-1);出错行*********************************
return facs(n);
}
...全文
48 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
PriMaryPeople 2003-10-20
  • 打赏
  • 举报
回复
using namespace std;
只有打开名字空间,才能使用cout之类的关键字。
请多多指教。
PriMaryPeople 2003-10-20
  • 打赏
  • 举报
回复
UP.楼上高手。
TianGuangZao 2003-10-20
  • 打赏
  • 举报
回复
足足有一箩筐错误。一定要仔细,先把书看懂再动手编,否则信心打击很大。

由于阶乘增长很快,这里就先不管溢出了。
#include <cstdio>
#include <iostream>
using namespace std; // 以上为第一处

long facs(int n);

int main()
{
int N;
printf( "请输入N: ");
scanf( "%d", &N); // 第二处

cout << facs( N ) << endl;

return 0;
}


long facs(int n) // 函数整个帮你重写
{
if (n == 1) return 1;
else
return n * facs( n - 1 );

}

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧