永发信息网

用c++实现,在顺序表L上查找所有与元素e相等的元素,输出其位置。在线等。

答案:2  悬赏:0  手机版
解决时间 2021-04-02 23:46
用c++实现,在顺序表L上查找所有与元素e相等的元素,输出其位置。在线等。
最佳答案
int Locatelist(Sqlist &L,Elemtype e)//定位
{int i=1;
Elemtype *p=L.elem;
while(i<=L.length && *p++!=e) i++;
if(i<=L.length) return i;
else return 0;
}追答
追问:查找的算法我是会的要完整的代码主要是顺序表的构造有点模糊。
追答://顺序的定义和一些相关的函数操作

#include
#include
#define Elemtype int
#define list_init_size 100
#define listincrement 10
typedef struct{ //结构体定义
Elemtype *elem;
int length;
int listsize;
}Sqlist;

int Initlist(Sqlist &L)//初始化
{
L.elem=(Elemtype*)malloc(list_init_size*sizeof(Elemtype));
if(!L.elem) {printf("overflow\n"); return 0;}
L.length=0;
L.listsize=list_init_size;
return 1;//
}

void Locatelist(Sqlist &L,Elemtype e)//定位
{int i=1;
Elemtype *p=L.elem;
while(i<=L.length && *p++!=e) i++;
if(i<=L.length)printf("%d\n",i);
else
printf("e不存在\n");
}

int Createlist(Sqlist &L,int n) //创建
{
int i;
for(i=n;i>0;i--)
{if(L.length>=L.listsize)
{Elemtype *newbase;
newbase=(Elemtype*) realloc(L.elem,(L.listsize+listincrement)*sizeof(Elemtype));
if(!newbase) {printf("overflow\n"); return 0;}
L.elem=newbase;
L.listsize+=listincrement;
}//if
printf("请输入数据:");
scanf("%d",L.elem+L.length++);
}
return 1;
}

void Printlist(Sqlist L)//输出
{
int i;
Elemtype *p;
p=L.elem;
for(i=1;i{printf("%d ",*p++);
if(i%10==0) printf("\n");
}
printf("\n");
}


void main()
{
Sqlist La;
int n,e;
printf("输入创建La时n的值:");
scanf("%d",&n);
Initlist(La);
Createlist(La,n);
Printlist(La);
printf("输入e的值:");
scanf("%d",&e);
Locatelist( La,e);

}

已经调试过了
追问:居然是C的。。。。很多语句不一样。。。不过还是谢谢你哈!
全部回答
p = &L;
for(i =0;i<position; i++)
{
switch(p[i])
{
case e:
cout<<position<<"\t";
break;
default
break;
}
}
具体代码自己写,大概就是这个意思。当然,用if判断也可以。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
我有一个女朋友,她说她喜欢我,其实我也挺喜
某商店出售某种商品每件可获利m元,利润率为2
爱护民族的语言谈谈你读了这篇短文后的感受
公文可以用单独文种做标题的是什么文种?
xmind6怎么导出图片
投标报价时需不需要考虑发承包模式
今天从银行里取出钱不到半小时发现一万块钱有
1985年正月二十三出生2o21年运程
韩国片有一个女人醒来发出呻鸣声是什么电影
请问前男友父亲去世,应该和对方联系并且安慰
指向字符串的指针与指向字符的指针有什么区别
以静写静的片段或以声写静大约一两百字
集体户口和正式户口有什么区别?
本田奥德赛2.4l的机器多少钱
东莞莞中有什么车经过?
推荐资讯
毕业典礼准备什么节目好
穷境难出人才的名言
请根据以下图标猜相应的成语
如图所示电路中,当开关________闭合时,L1、
CDR中的 另存为 和 导出 导入有什么区别?
2018年正月初五做七十大寿吉利吗
空放是什么意思
魔兽世界各大版本成就龙各需要几个cd
想去香港旅游,但是旅行社太多,不知道哪个正
虽说这好像是一道七年级的数学题,但是我脑袋
小米6如何,性价比高不高
/964年9月7日阴历是多少
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?