#include <stdio.h>
int search(int a[],int n,int k)
{
int i,f=-1;
for(i=0;i<n;i++)
if(a[i]==k)
{
f=i;break;
}
return f;
}
void delate(int a[])
{
int j,i;
for(i=9;i>0;i--)
if(a[i]==0)
for(j=i;j<10;j++)
a[j]=a[j+1];
}
int main()
{
int a[10],b[10],c[20],i,j,k=0,index=0;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<10;i++)
scanf("%d",&b[i]);
for(i=0;i<10;i++)
for(j=i+1;j<10-index;j++)
if(a[i]==a[j])
{a[j]=0;
delate(a);
index++;}
k=10-index;
for(i=0;i<k;i++)
c[i]=a[i];
for(i=0;i<10;i++)
if(search(c,20,b[i])==-1)
{c[k]=b[i];k++;}
for(i=0;i<k;i++)
printf("%d,",c[i]);
printf("\n");
return 0;
}

uj5u.com熱心網友回復:
出錯資訊很明確,你的源代碼的18行引起無效記憶體參考,也就是陣列訪問越界。uj5u.com熱心網友回復:
void delate(int a[])
{
int j,i;
for(i=9;i>0;i--)
if(a[i]==0)
for(j=i;j<10-1;j++)
a[j]=a[j+1];
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/244071.html
標籤:C語言
上一篇:if用法
下一篇:if用法
