求看看程序,有两个错误,求交并集 cannot convert from '' to 'int (__cdecl *)(int,int,int)'

AMBER677 2019-11-12 09:57:26
#include<stdio.h>

void main()
{
int less(int a[10],int b[10],int result[20]);
int more(int a[10],int b[10],int result[20]);
int a[10],b[10],result[20],n,m,g[20],h[20];
int (*c[20])(int,int,int)={less,more};


printf("输入1为交集\n");
printf("输入2为并集\n");

printf("select your choice\n");
scanf("%d",&n);

printf("input number:\n");
for(m=0;m<10;m++)
{
scanf("%d",a[m]);
}
printf("input number:\n");
for(m=0;m<10;m++)
{
scanf("%d",b[m]);
}
for(n=0;n<20;n++)
{

}
for(m=0;m<10;m++)
g[m]=c[m](a[10],b[10],result[20]);
for(m=10;m<20;m++)
h[m-10]=c[m](a[10],b[10],result[20]);

if(n=1)
{for(m=0;m<10;m++)
printf("%d",g[m]);}
if(n=2)
{for(m=0;m<10;m++)
printf("%d",h[m]);}



}



int less(int a[10],int b[10],int result[20])
{
int m,n,k=0,*p;

for(m=0;m<10;m++)
{
for(n=0;n<10;n++)
{
if(a[m]=b[n])
{
result[k]=a[m];
k++;
}
}
}
p=result;
return *p;
}



int more(int a[10],int b[10],int result[20])
{
int m,n,k=0,*p;
for(m=0;m<10;m++)
{
result[k]=a[m];
k++;
}
k=11;
for(n=0;n<10;n++)
{
if(b[n]!=result[0]&&b[n]!=result[1]&&b[n]!=result[2]&&b[n]!=result[3]&&b[n]!=result[4]&&b[n]!=result[5]&&b[n]!=result[6]&&b[n]!=result[7]&&b[n]!=result[8]&&b[n]!=result[9])
{
result[k]=b[n];
k++;
}
}
p=result;
return *p;
}
...全文
20 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
铖邑 2019-11-12
  • 打赏
  • 举报
回复
c没有完整的初始化 c[m]后面参数,不要写a[10],而是直接传a进去,其它地方类似修改

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧