顺序表基本操作
2015-07-21 10:06
260 查看
献给那些刚开始学数据结构 看不懂书上的伪代码的同学 强烈建议初学者必学结构体 指针 可以去图书馆借参考书
#include<stdio.h>
#include<stdlib.h>
#define N 1000
typedef struct node
{
int a
;
int leng;
}*linklist;
void chu(linklist &head)
{
head->leng=0;
}
void in(linklist &head)
{
int m;
printf("请输入数字以0结束\n");
while(scanf("%d",&m),m)
{
head->a[head->leng]=m;
head->leng++;
}
}
void out(linklist &head)
{
printf("一元多项式是:\n");
for(int i=0;i<head->leng;i++)
printf("%d ",head->a[i]);
printf("\n");
}
void list(linklist &head)
{
int m;
printf("请输入要插入的位置\n");
scanf("%d",&m);
if(m<1||m>head->leng+1)
{
printf("插入位置有误\n");
return;
}
else if(head->leng>=N) printf("此表已\n");
else
{
for(int i=head->leng;i>=m;i--)
head->a[i]=head->a[i-1];
printf("请输入插入的数字\n");
scanf("%d",&head->a[m-1]);
head->leng+=1;
}
}
void dele(linklist &head)
{
int m;
printf("请输入要删除的位置\n");
scanf("%d",&m);
if(m<1||m>head->leng)
{
printf("删除的位置有误\n");
return;
}
else if(head->leng==0) printf("此表以空\n");
else
{
for(int i=m-1;i<head->leng;i++)
head->a[i]=head->a[i+1];
head->leng-=1;
}
}
main()
{
linklist head;
chu(head);
in(head);
out(head);
list(head);
out(head);
dele(head);
out(head);
}
#include<stdio.h>
#include<stdlib.h>
#define N 1000
typedef struct node
{
int a
;
int leng;
}*linklist;
void chu(linklist &head)
{
head->leng=0;
}
void in(linklist &head)
{
int m;
printf("请输入数字以0结束\n");
while(scanf("%d",&m),m)
{
head->a[head->leng]=m;
head->leng++;
}
}
void out(linklist &head)
{
printf("一元多项式是:\n");
for(int i=0;i<head->leng;i++)
printf("%d ",head->a[i]);
printf("\n");
}
void list(linklist &head)
{
int m;
printf("请输入要插入的位置\n");
scanf("%d",&m);
if(m<1||m>head->leng+1)
{
printf("插入位置有误\n");
return;
}
else if(head->leng>=N) printf("此表已\n");
else
{
for(int i=head->leng;i>=m;i--)
head->a[i]=head->a[i-1];
printf("请输入插入的数字\n");
scanf("%d",&head->a[m-1]);
head->leng+=1;
}
}
void dele(linklist &head)
{
int m;
printf("请输入要删除的位置\n");
scanf("%d",&m);
if(m<1||m>head->leng)
{
printf("删除的位置有误\n");
return;
}
else if(head->leng==0) printf("此表以空\n");
else
{
for(int i=m-1;i<head->leng;i++)
head->a[i]=head->a[i+1];
head->leng-=1;
}
}
main()
{
linklist head;
chu(head);
in(head);
out(head);
list(head);
out(head);
dele(head);
out(head);
}
相关文章推荐
- android中处理异常崩溃
- 应用程序的版本更新
- ios-画图UIBezierPath
- 总结----关于图片旋转
- iOS-CoreLocation:无论你在哪里,我都要找到你!
- PQJ 1686(栈栈栈)
- [干货来袭]C#6.0新特性
- linux cdev 理解
- window7下 HTTP 错误 500.19 - Internal Server Error 错误解决方法 集锦iis7
- ZooKeeper安装方法详解
- 杭电1007
- 创建Windows服务(Windows Services)N种方式总结
- Hibernate中HQL语句的使用
- [POJ 2689] Prime Distance
- HDU 4864 Task
- js编码url
- 62 第一个项目上线前总结
- android XXXActivity和getApplicationContext()区别
- Markdown语法使用
- swiper 增加同页面增加2个滚动