请问c++中Compile Error 怎么解决?
代码:好像错在intmain()而代码中用到了char类型但不知道怎么改请赐教#include<iostream>usingnamespacestd;intmain(){...
代码:好像错在 int main() 而代码中用到了char类型 但不知道怎么改 请赐教
#include<iostream>
using namespace std;
int main()
{
int n,c,b[100];
char a[100],d;
cin>>n;
for(int m=0;m<n;m++)
{
b[m]=0;
}
cin>>a;
for(int i=0;i<n-1;i++)
for(int r=i+1;r<n;r++)
{
if(a[i]==a[r])
b[i]++;
}
for(i=0;i<n;i++)
{
if(b[i]>b[i+1])
{
c=b[i];
b[i+1]=c;
d=a[i];
a[i+1]=d;
}
}cout<<a[n-1]<<endl;
} 展开
#include<iostream>
using namespace std;
int main()
{
int n,c,b[100];
char a[100],d;
cin>>n;
for(int m=0;m<n;m++)
{
b[m]=0;
}
cin>>a;
for(int i=0;i<n-1;i++)
for(int r=i+1;r<n;r++)
{
if(a[i]==a[r])
b[i]++;
}
for(i=0;i<n;i++)
{
if(b[i]>b[i+1])
{
c=b[i];
b[i+1]=c;
d=a[i];
a[i+1]=d;
}
}cout<<a[n-1]<<endl;
} 展开
4个回答
展开全部
你在本地能通过说明你用的是VC++6.0,如果你交ACM程序兆备的话建议使用Dev-C++或者MinGW。
把i的声明放在循环外姿颂就可以了。
VC++ 2010、GCC 4.5.2编译通过。
#include<iostream>
using namespace std;
int main()
{
int n,c,i,b[100]; //把i的声迹猜郑明放在这里
char a[100],d;
cin>>n;
for(int m=0;m<n;m++)
{
b[m]=0;
}
cin>>a;
for(i=0;i<n-1;i++)
for(int r=i+1;r<n;r++)
{
if(a[i]==a[r])
b[i]++;
}
for(i=0;i<n;i++)
{
if(b[i]>b[i+1])
{
c=b[i];
b[i+1]=c;
d=a[i];
a[i+1]=d;
}
}cout<<a[n-1]<<endl;
return 0;
}
把i的声明放在循环外姿颂就可以了。
VC++ 2010、GCC 4.5.2编译通过。
#include<iostream>
using namespace std;
int main()
{
int n,c,i,b[100]; //把i的声迹猜郑明放在这里
char a[100],d;
cin>>n;
for(int m=0;m<n;m++)
{
b[m]=0;
}
cin>>a;
for(i=0;i<n-1;i++)
for(int r=i+1;r<n;r++)
{
if(a[i]==a[r])
b[i]++;
}
for(i=0;i<n;i++)
{
if(b[i]>b[i+1])
{
c=b[i];
b[i+1]=c;
d=a[i];
a[i+1]=d;
}
}cout<<a[n-1]<<endl;
return 0;
}
展开全部
这些常见的错误,在编译器中直接点击,不就定位到错误的行了么。
授之以渔吧。工欲善其事,必先利其器。研究一下常用的编译器或者兆伍IDE吧。
以后你就知道了,族毁或编程过程中调试才是最难的余厅环节
授之以渔吧。工欲善其事,必先利其器。研究一下常用的编译器或者兆伍IDE吧。
以后你就知道了,族毁或编程过程中调试才是最难的余厅环节
追问
十分同意 找不出错误原因最烦了!!可是这个在我的编译器里是正确的 提交到ACM的题库里就显示 Compile Error…………郁闷
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
少些了搜念个int
修改后:
#include<iostream>
using namespace std;
int main()
{
int n,c,b[100];
char a[100],d;
cin>>n;
for(int m=0;m<n;m++)
{
b[m]=0;
}
cin>>a;
for(int i=0;i<n-1;i++)
for(int r=i+1;r<n;r++)
{
if(a[i]==a[r])
b[i]++;
}
for(int i=0;i<n;i++)
{
if(b[i]>b[i+1])
{
c=b[i];
b[i+1]=c;
d=a[i];
a[i+1]=d;
}
}cout<<世迅困a[n-1]<<昌枝endl;
}
修改后:
#include<iostream>
using namespace std;
int main()
{
int n,c,b[100];
char a[100],d;
cin>>n;
for(int m=0;m<n;m++)
{
b[m]=0;
}
cin>>a;
for(int i=0;i<n-1;i++)
for(int r=i+1;r<n;r++)
{
if(a[i]==a[r])
b[i]++;
}
for(int i=0;i<n;i++)
{
if(b[i]>b[i+1])
{
c=b[i];
b[i+1]=c;
d=a[i];
a[i+1]=d;
}
}cout<<世迅困a[n-1]<<昌枝endl;
}
追问
十分感谢!可是还是不对……郁闷
追答
提交的时候换下编译器,本来C++的用G++提交试试
还有最后加个return 0;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-08-10
展开全部
变量定义的时候最好统一,要么都是在循环内部定义,要么开始的时候定义好,后面可以复用
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询