![思维导图](https://img-blog.csdnimg.cn/ced71ae04dbb4246813f263e39dcb3cb.png#pic_center)
list_search_value(S,100);
list_sort(S,0);
list_mvalue(S,0);
list_reverse(S);
return 0;
int list_search_value(seqListPtr S, datatype e)
{
if (NULL == S || list_empty(S))
{
printf("查找失败\n");
return 0;
}
int flag = 0;
for (int i = 0; i < S->len; i++)
{
if(S->data[i] == e)
{
flag = 1;
printf("第%d个值是%d\n",i+1, e);
}
}
if(flag == 0)
{
printf("没有找到");
return -1;
}
}
void list_sort(seqListPtr S, int flag)
{
if (NULL == S || list_empty(S))
{
printf("查找失败\n");
return;
}
int index = 0;
datatype temp;
if (flag == 1)
{
for (int i = 1; i < S->len; i++)
{
index = i-1;
for (int j = i-1; j < S->len; j++)
{
if (S->data[j] < S->data[index])
{
index = j;
}
}
if(index!=i-1)
{
temp = S->data[index];
S->data[index] = S->data[i-1];
S->data[i-1] = temp;
}
}
}
else if(flag == 0)
{
for (int i = 1; i < S->len; i++)
{
index = i-1;
for (int j = i-1; j < S->len; j++)
{
if (S->data[j] > S->data[index])
{
index = j;
}
}
if(index!=i-1)
{
temp = S->data[index];
S->data[index] = S->data[i-1];
S->data[i-1] = temp;
}
}
}
}
datatype list_mvalue(seqListPtr S,int flag)
{
datatype temp;
datatype index = S->data[0];
if (flag == 1)
{
for (int i = 0; i < S->len; i++)
{
if (S->data[i]>index)
{
index = S->data[i];
}
}
printf("最大值为%d\n",index);
}
else
{
for (int i = 0; i < S->len; i++)
{
if (S->data[i]<index)
{
index = S->data[i];
}
}
printf("最小值为%d\n",index);
}
}
void list_reverse(seqListPtr S)
{
datatype temp;
for (int i = 0; i < (S->len)/2; i++)
{
temp = S->data[i];
S->data[i] = S->data[S->len-1-i];
S->data[S->len-1-i] = temp;
}
printf("反转之后的顺序为:");
for (int i = 0; i < S->len; i++)
{
printf("%d ", S->data[i]);