AC代码:
#include<stdio.h>
#define MaxSize 50
/**
*逆置顺序表
*/
struct Sqlist{
int data[MaxSize];
int length;
};
void ChaZhaoTihuan(Sqlist &L1,int item,int data)
{
int i=-1;//定义i用以记录查找元素的位置
//遍历顺序表查找item元素是否存在
for(int j=0;j<L1.length;j++)
{
if(L1.data[j]==item)
{
i=j;
break;//查找成功,退出循环
}
}
if(i!=-1)
{//在已有元素前添加data数据
for(int j=L1.length;j>=i;j--)
L1.data[j]=L1.data[j-1];
L1.data[i]=data;
L1.length++;//表长+1
}
else{//未查找到元素,在顺序表的末尾
L1.data[L1.length]=data;
L1.length++;//表长+1
}
}
#define MaxSize 50
/**
*逆置顺序表
*/
struct Sqlist{
int data[MaxSize];
int length;
};
void ChaZhaoTihuan(Sqlist &L1,int item,int data)
{
int i=-1;//定义i用以记录查找元素的位置
//遍历顺序表查找item元素是否存在
for(int j=0;j<L1.length;j++)
{
if(L1.data[j]==item)
{
i=j;
break;//查找成功,退出循环
}
}
if(i!=-1)
{//在已有元素前添加data数据
for(int j=L1.length;j>=i;j--)
L1.data[j]=L1.data[j-1];
L1.data[i]=data;
L1.length++;//表长+1
}
else{//未查找到元素,在顺序表的末尾
L1.data[L1.length]=data;
L1.length++;//表长+1
}
}
int main()
{
Sqlist L1;
scanf("%d",&L1.length);
for(int i=0;i<L1.length;i++)
{
scanf("%d",&L1.data[i]);
}
int item;
int data;
scanf("%d",&item);
scanf("%d",&data);
ChaZhaoTihuan(L1,item,data);
for(int i=0;i<L1.length;i++)
printf("%d ",L1.data[i]);
return 0;
}
{
Sqlist L1;
scanf("%d",&L1.length);
for(int i=0;i<L1.length;i++)
{
scanf("%d",&L1.data[i]);
}
int item;
int data;
scanf("%d",&item);
scanf("%d",&data);
ChaZhaoTihuan(L1,item,data);
for(int i=0;i<L1.length;i++)
printf("%d ",L1.data[i]);
return 0;
}