永发信息网

编写一个算法,将顺序表A(有n个元素,且各元素均不为0)拆分成两个顺序表。使A中所有大于0的元素都存入B

答案:1  悬赏:60  手机版
解决时间 2021-11-15 06:14
编写一个算法,将顺序表A(有n个元素,且各元素均不为0)拆分成两个顺序表。使A中所有大于0的元素都存入B
最佳答案
#include
#define max 10
typedef int elemtype;
typedef elemtype sqlist[max];

int create(sqlist a) //创建一个顺序表,返回表中含有元素个数的值n
{
int n,i;
cout<<"输出一个顺序表:"< cout<<" 输入元素的个数:"< cin>>n;
for(i=0;i {
cout<<" 输入第"< cin>>a[i];
}
return n;
}

void disp(sqlist a,int n) //输出顺序表的值
{
int i;
cout<<"输出顺序表:"< for(i=0;i cout< cout<}

void split(sqlist a,int n,sqlist b,int *nb,sqlist c,int *nc)//由于要传递两个数值,所以不可以用return语句,而是采用通过指针来传递数值
{
int i,x=0,y=0;
for(i=0;i {
if(a[i]>0)
{
b[x]=a[i];
x++;
}
else
{
c[y]=a[i];
y++;
}
}
(*nb)=x; //将x的值用指针来传递
(*nc)=y; //将y的值用指针来表示
}

void main()
{
int n,nb,nc;
sqlist a,b,c;
n=create(a);
disp(a,n);
split(a,n,b,&nb,c,&nc); //通过指针来传递数值
nc=n-nb;
disp(b,nb);
disp(c,nc);
}

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
四怎么写?带勾吗?第二笔!
我怀孕了。
帮帮我。我戴眼镜不知道为什么总会眼睛易疲劳
悬赏100分,诚意求懂吉他的大神来。 答案质量
建南汽车站通往寿阳吗?
东吴大将陈武被谁击杀
梭梭葡萄干怎么吃
陛下不能将兵,而善将将,此乃信之所以为陛下
涂料助剂的种类有哪些 水性涂料助剂有哪些
周大生钻戒f.gsi钻石会发黄吗
羌、戎、夷、狄、蛮、胡指的都是指什么人,后
性格决定命运,瞧瞧巨蟹座怎样改变自己成为幸
k1163火车11车厢座位怎么分布的?
初中毕业可以直接进体校吗?
()无处不飞花,寒食东来御柳斜
推荐资讯
已经买过房了 还能申请公租房吗
大连刘一龙虾中山广场附近搜索图片。
去平湖行政服务中心坐几路车。有直达吗?
酒店客房部有哪些岗位,分别有什么工作
win7下的VPC的控制界面打不开?怎么办?
求看破一切诗词
Raionalrose Win10安装为什么会闪退
《崩坏3》如何提升战力
何以笙箫默第几集何以琛和赵默笙 第几集去拜
求重口漫画,注意是漫画,要露的。【羞,,不
汤马熊动漫世界地址在哪,我要去那里办事,
give the cake.选择me还是选择he还是选择she
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?