首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

//合并两个已排序的数组,该如何处理

2012-02-21 
//合并两个已排序的数组//合并两个已排序的数组#include iostreamusingnamespacestdint*mercy(inta[],i

//合并两个已排序的数组
//合并两个已排序的数组
#include <iostream>
using   namespace   std;

int*   mercy(int   a[],int   sizea,int   b[],int   sizeb){
int   c[1000];
int   s=0,t=0,k=0;
while(s <sizea&&t <sizeb){
if(a[s] <b[t]){
c[k]=a[s];
s++;
}
else   {
c[k]=b[t];
t++;
}
k++;
}
if(s==sizea){
for(;t <sizeb;t++){
c[k]=b[t];
}
}
if(t==sizeb){
for(;s <sizea;s++){
c[k]=a[s];
}
}
return   &c[0];
}

void   mian(){
int*   c;
int   a[]={1,3,5,7,9},b[]={2,4,6,8,10};
c=mercy(a,5,b,5);
for(int   i=0;i <10;i++){
cout < <c[i];
}
cout < <endl;

}
哪有问题?
运行报错

--------------------Configuration:   mercy   -   Win32   Debug--------------------
Compiling...
mercy.cpp
Linking...
LIBCD.lib(crt0.obj)   :   error   LNK2001:   unresolved   external   symbol   _main
Debug/mercy.exe   :   fatal   error   LNK1120:   1   unresolved   externals
执行   link.exe   时出错.


[解决办法]
void mian()
改成
void main()
[解决办法]
c在函数里定义?是局部变量,退出函数c的空间已经被释放了。

热点排行