关于一个简单的c++程序

来源:百度知道 编辑:UC知道 时间:2024/07/02 20:51:51
帮忙看看这个程序错在哪。
#include<iostream.h>
void main()
{
cout<<'a'+'b'<<endl;
int n;
long fac,sum=0;
cin>>n;
for(fac=1,int i=1;i<n;i++)
{
fac*=i;
sum+=fac;
}
cout<<sum<<endl;
}

cout<<'a'+'b'<<endl;
int n;
long fac = 1,sum=0;
cin>>n;
for(int i=1;i<n;i++)
{
fac*=i;
sum+=fac;
}
cout<<sum<<endl;
fac直接外面赋值就好了,放for里面去干什么呢,那里必须是先定义的

for(fac=1,int i=1;i<n;i++)

改为

fac=1;
for(int i=1;i<n;i++)

#include<iostream.h>
void main()
{
cout<<'a'+'b'<<endl;
int i,n;
long fac,sum=0;
cin>>n;
for(fac=1, i=1;i<n;i++)//此处修改
{
fac*=i;
sum+=fac;
}
cout<<sum<<endl;
}

注意变量i的作用域

#include<iostream.h>
void main()
{
int n,i;
long fac,sum=0;
cout<<'a'+'b'<<endl;
cin>>n;
for(fac=1,i=1;i<n;i++)
{
fac*=i;
sum+=fac;
}
cout<<sum<<endl;
}
不要这里定义一个变量,那里定义一个变量