关于数据结构的改错(c语言的)

来源:百度知道 编辑:UC知道 时间:2024/05/14 18:22:44
这是我打的源程序,但是我就是不知道那里的错误,就是合并不了顺序表,看了很多的数据结构的书,我想不因该是合并的主程序的问题……
求教高人可以指点下那里的错误,并改正……
源程序如下:
#include<stdio.h>
#define MAX 100

void ArrIn(int *a,int n)
{
int i;
for(i=0;i<n;i++)
scanf("%d",&a[i]);
printf("\n");
}

void ArrOut(int *a,int n)
{
int i;
for(i=0;i<n;i++)
printf("%d ",a[i]);
printf("\n");
}
void ArrIn1(int *a,int n)
{
int i;
for(i=0;i<n;i++)
scanf("%d",&a[i]);
printf("\n");
}

void ArrOut1(int *a,int n)
{
int i;
for(i=0;i<n;i++)
printf("%d ",a[i]);
printf("\n");
}

int Arrlink(int a[],int b[],int c[],int *pa,int *pb,int *pc)
{
int i=0;
int j=0;
int k=0;
while(i<

#include<stdio.h>
#define MAX 100

void ArrIn(int *a,int n)
{
int i;
for(i=0;i<n;i++)
scanf("%d",&a[i]);
printf("\n");
}

void ArrOut(int *a,int n)
{
int i;
for(i=0;i<n;i++)
printf("%d ",a[i]);
printf("\n");
}

void Arrlink(int *a,int *b,int *c,int n) // 现在假设a和b都是顺序表
{
for(int i=0,j=0,k=0;k<2*n&&i<n&&j<n;){
if(a[i]<b[j])
c[k++]=a[i++];
else
c[k++]=b[j++];
}
if(i==n)
while(j<n)
c[k++]=b[j++];
if(j==n)
while(i<n)
c[k++]=a[i++];
}

void main()
{
int a[MAX],b[MAX],c[MAX],n; //
printf("输入数据个数:\n");
scanf("%d",&n);

printf("输入a数据:\n");
ArrIn(&a[0],n); // 如果不用指针那么申请的空间在函数结束时都释放了
printf("数据a的结果:\n");