创建创建一个顺序表,要求如下: 1、创建一个顺序表,其数据元素类型为整型; 2、运行过程中,从键盘输入 50
创建一个顺序表,要求如下:1、创建一个顺序表,其数据元素类型为整型;2、运行过程中,从键盘输入数据;4、倒序输出整个顺序表。例如:顺序表为:22,44,11,88输出为:...
创建一个顺序表,要求如下:
1、创建一个顺序表,其数据元素类型为整型;
2、运行过程中,从键盘输入数据;
4、倒序输出整个顺序表。
例如:顺序表为:22,44,11,88
输出为: 88,11,44,22 展开
1、创建一个顺序表,其数据元素类型为整型;
2、运行过程中,从键盘输入数据;
4、倒序输出整个顺序表。
例如:顺序表为:22,44,11,88
输出为: 88,11,44,22 展开
3个回答
展开全部
#include<stdio.h>
struct SQList/*定液握让义顺序表每个元素的结构*/
{
int data;
struct SQList * next;
};
struct SQList * SQInsert(struct SQList * list)/*插入一个元素*/
{
struct SQList * temp = list;/*临时保存原先的list*/
list = (struct SQList *)malloc(sizeof(struct SQList));/*新建一个元素*/
printf("data:");/*提闹局示输入*/
scanf("%d", &(list->data) );/*将输入数值放到新元素中*/
list->next = temp;/*将新元素和原先的顺序表串接起来, 成为一个新的顺序表*/
printf("\n");
return list;/*返回新顺序表*/
}
void SQPrint(struct SQList * list)
{
struct SQList * temp = list;/*用temp打印输出皮腔, 以免破坏顺序表*/
while(temp != NULL)/*元素不为空则一直打印*/
{
printf("%d ", temp->data);
temp = temp->next;
}
printf("\n");
}
void main()
{
struct SQList * list = NULL;
char select;
while(1)
{
printf("I:Insert, P: Print.\n");
printf("please select:");
select = getchar();/*select记录用户的选择, 在下面的switch时做判断使用*/
/*需要添加功能的话也很容易, 只要在下面的switch中添加一个case就可以, 比如加入一个删除功能, 可以case 'D': SQDelete(list), 然后在main前面编辑这个SQDelete函数就可以啦, 再在前面的输入提示那里显示D: delete就更完善啦*/
switch(select)
{
case 'I':
list = SQInsert(list);
break;
case 'P':
SQPrint(list);
break;
default:
printf("invalid input.\n\n");
break;
}
getchar();/*清除输入的回车*/
}
}
struct SQList/*定液握让义顺序表每个元素的结构*/
{
int data;
struct SQList * next;
};
struct SQList * SQInsert(struct SQList * list)/*插入一个元素*/
{
struct SQList * temp = list;/*临时保存原先的list*/
list = (struct SQList *)malloc(sizeof(struct SQList));/*新建一个元素*/
printf("data:");/*提闹局示输入*/
scanf("%d", &(list->data) );/*将输入数值放到新元素中*/
list->next = temp;/*将新元素和原先的顺序表串接起来, 成为一个新的顺序表*/
printf("\n");
return list;/*返回新顺序表*/
}
void SQPrint(struct SQList * list)
{
struct SQList * temp = list;/*用temp打印输出皮腔, 以免破坏顺序表*/
while(temp != NULL)/*元素不为空则一直打印*/
{
printf("%d ", temp->data);
temp = temp->next;
}
printf("\n");
}
void main()
{
struct SQList * list = NULL;
char select;
while(1)
{
printf("I:Insert, P: Print.\n");
printf("please select:");
select = getchar();/*select记录用户的选择, 在下面的switch时做判断使用*/
/*需要添加功能的话也很容易, 只要在下面的switch中添加一个case就可以, 比如加入一个删除功能, 可以case 'D': SQDelete(list), 然后在main前面编辑这个SQDelete函数就可以啦, 再在前面的输入提示那里显示D: delete就更完善啦*/
switch(select)
{
case 'I':
list = SQInsert(list);
break;
case 'P':
SQPrint(list);
break;
default:
printf("invalid input.\n\n");
break;
}
getchar();/*清除输入的回车*/
}
}
展开全部
#include<iostream>
using namespace std;
#define SIZE_MAX 50
typedef struct{
int array[SIZE_MAX];
int size;
}SeqList;
int main()
{
SeqList q;
int m;
cout<裂闷<"输入顺序表中存储元素的个数:";
cin>>m;
q.size=m;
for(int i=0;i<q.size;i++)
cin>>q.array[i];
for(int i=q.size-1;i>=0;i--)
cout<<q.array[i]<<" ";
return 0;
}
很简单大告的写了段代码,看看能不能满足你的要求~~,可以肆仿弯追加更新
using namespace std;
#define SIZE_MAX 50
typedef struct{
int array[SIZE_MAX];
int size;
}SeqList;
int main()
{
SeqList q;
int m;
cout<裂闷<"输入顺序表中存储元素的个数:";
cin>>m;
q.size=m;
for(int i=0;i<q.size;i++)
cin>>q.array[i];
for(int i=q.size-1;i>=0;i--)
cout<<q.array[i]<<" ";
return 0;
}
很简单大告的写了段代码,看看能不能满足你的要求~~,可以肆仿弯追加更新
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
建一个数组模拟栈,先入栈,在出栈
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |