题目描述
建立长度为n的顺序表,然后将表中的数据元素逆置,即若表中原来的数据元素序列为(a0,a1,a2,…,an),则逆置后的数据元素序列为(an,an-1,an-2,…,a1,a0)。(数据类型为字符型)
输入
第一行为顺序表的长度n;第二行为顺序表中的数据元素.
输出
输出为逆置后的顺序表.
样例输入
7
ABCDEFG
样例输出
G F E D C B A
参考程序
#include<stdio.h>
#include<stdlib.h>
#define Maxsize 50
typedef struct sqlist
{
char data[Maxsize];
int len;
}Sqlist;
void Creat(Sqlist *&S, int n)
{
S = (Sqlist *) malloc (sizeof(Sqlist));
scanf("%s", S->data);
S->len = n;
}
void Change(Sqlist *&S)
{
char a[S->len];
for(int i=0, j=S->len-1; i < S->len; i++, j--)
a[i] = S->data[j];
for(int i=0; i < S->len; i++)
S->data[i] = a[i];
}
char print(Sqlist *S)
{
for(int i=0; i < S->len; i++)
printf("%c " , S->data[i]);
}
int main()
{
int n;
Sqlist *S;
scanf("%d", &n);
Creat(S, n);
Change(S);
print(S);
return 0;
}
注意
该程序仅供学习参考!