请教一个C语言编译器的问题,我程序没问题但编译时候总是报错,求大神解答

下面这段程序为什么在我的编译器编译时候就会出错 我检查了好几遍程序本身没问题但编译时候就报错 求大神解答下
#include<stdio.h>
void main()
{
int i,j;
int a[5][3];
float b[5],c[3],s;
printf("input score: \n");
for(i=0;i<5;i++)
{
for(j=0;j<3;j++)
{scanf("%d",&a[i][j]);}
}
for(i=0;i<5;i++)
{
s=0;
for(j=0;j<3;j++)
s=s+a[i][j];
b[i]=s/3.0;
}
for(j=0;j<3;j++)
{
s=0;
for(i=0;i<5;i++)
s=s+a[i][j];
c[j]=s/5.0;
}
for(i=0;i<5;i++)
printf("No. %d:%8.2f\n",i+1,b[i]);
printf("math=%f\nhistroy=%f\nwuli=%c",c[0],c[1],c[2]);
}

Linking...
5.obj : error LNK2005: _main already defined in 2.obj
3.obj : error LNK2005: _main already defined in 2.obj
LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16
Debug/0617.exe : fatal error LNK1120: 1 unresolved externals
执行 link.exe 时出错.
0617.exe - 1 error(s), 0 warning(s)

第1个回答  2013-06-17
_main already defined in 2.obj

这代表你的工程中有两个main函数,你可以通过重建一个工程来解决这个问题。
如果我没猜错,你应该是有多个源代码的文件,一个是5.cpp,一个是2.cpp, 另一个是3.cpp。而且里边都有main函数。
第2个回答  2013-06-18
你的工程里包含了3.c 5.c文件,里面都有一个main函数,你要将3.c 5.c从左边的工程管理图移除才能正确编译。追问

一个工程里只能有一个main()函数是哇?

第3个回答  2013-06-17
一个工程 即是一个程序 只能有一个包含main函数的源文件
请在 FileView Source中选中 之前写的含有main函数的源文件 按delete键(从工程中移除)本回答被网友采纳
相似回答