c语言创建空顺序表的程序,用C语言编写一个完整的程序,实现顺序表的建立、插入、删除、输出等基本运算。...
#include
#include
#define maxsize 30
typedef int datatype;
typedef struct seqlist{
datatype data[maxsize];
int n;
}seqlist;
struct seqlist L;
//顺序表初始化1-20
void Stu() {
printf("\n顺序表正在初始化...\n\n顺序表能储存的数据最多为30个\n\n\n");
int temp=0,n=0;
for(temp=0;temp<20;temp++){
L.data[temp]=temp+1;
n++;
}//自定义1-20的数据方便检测程序
L.n=n;//改变顺序表长度
};
//输出顺序表当前储存的数据
void Show(){
int temp;
printf("\n\n顺序表当前储存的数据:\n ");
for(temp=0;temp
printf(" %d ",L.data[temp]);
}
printf("\n");
}
//在顺序表中输入数据
void inList(){
int newn,temp;
reset1:
printf("\n请输入需要储存的数据个数:\n");
scanf("%d",&newn);
if(newn>maxsize){
printf("\n顺序表最多储存%d个数据!\n",maxsize);
goto reset1;
}
printf("\n请输入你需要储存的数据:\n");
for(temp=0;temp
scanf("%d",&L.data[temp]);
}//输入\更改数据
for(temp=newn;temp
L.data[temp]=0;
}//将不需要储存的数据置零
L.n=newn;//更新顺序表长度
printf("\n你插入的数据为:");
for(temp=0;temp
printf("%d\t",L.data[temp]);
}
}
//在顺序表中查找某一个逻辑位置的数据并输出
void search1(){
int x;
reset2://判断输入的逻辑位置
printf("\n请输入你需要在顺序表中查找的逻辑位置:\n");
scanf("%d",&x);
if(x<1||x>maxsize){
printf("\n逻辑位置最低为1,最高为30!\n");
goto reset2;
}
int temp;
for(temp=0;temp
if(x==(temp+1)){
printf("\n顺序表中这个位置的数据为%d\n",L.data[temp]);
return ;
}
}
printf("顺序表中的这个逻辑位置未储存数据!\n");
}
//在顺序表中查找数据输入它的逻辑位置
void search2(){
int x;
printf("\n请输入你需要在顺序表中查找的数据:\n");
scanf("%d",&x);
int temp;
for(temp=0;temp
if(L.data[temp]==x){
printf("\n查找成功!\n它在顺序表中的逻辑位置为%d\n",temp+1);
return ;
}
}
printf("在顺序表中未找到这个数据!");
}
//在顺序表中插入数据
void insert(){
if(L.n==maxsize){//表满则无法插入
printf("当前顺序表已储存了30个数据,无法插入!\n");
return;
}
if(L.n==0){//表空则无法插入
printf("当前顺序表没有储存数据,无法插入!\n");
return;
}
int p,x,temp1;
reset3://判断输入的逻辑位置
printf("\n请输入你在顺序表中需要插入数据的逻辑位置:\n");
scanf("%d",&p);
if(p<1||p>L.n){//插入的逻辑位置不能是顺序表的前驱和最后的后继
printf("\n插入的逻辑位置最小为1,最高为%d!\n",L.n);
goto reset3;
}
printf("\n请输入该数据:\n");//提示输入并输入
scanf("%d",&x);
for(temp1=L.n;temp1>=p;temp1--){
L.data[temp1+1]=L.data[temp1];
}
L.data[p]=x;
L.n++;
printf("\n插入数据后变为:");
for(temp1=0;temp1
printf("%d\t",L.data[temp1]);
}
}
//删除顺序表中的某个位置的数据
int deletel(){
if(L.n==0){//表空无法删除
printf("当前顺序表没有储存数据,无法删除!\n");
return;
}
int p,temp;
reset4:
printf("\n请输入你在顺序表中需要删除的数据的逻辑位置:\n");
scanf("%d",&p);
if(p<1||p>L.n){
printf("该逻辑位置没有储存数据!");
goto reset4;
}
L.n--;
for(temp=p;temp<=L.n;temp++){
L.data[temp-1]=L.data[temp];
}
printf("删除数据后变为:");
for(temp=0;temp
printf("%d\t",L.data[temp]);
}
}
main(){
Stu();//顺序表初始化1-20
inList();//输出顺序表当前储存的数据
search1();//在顺序表中查找某一个逻辑位置的数据并输出
search2();//在顺序表中查找数据输入它的逻辑位置
insert();//在顺序表中插入数据,并输出
deletel();//删除顺序表中的某个位置的数据,并输出其他的元素
return 0;
}
c语言创建空顺序表的程序,用C语言编写一个完整的程序,实现顺序表的建立、插入、删除、输出等基本运算。...相关推荐
- python国际象棋ai程序_用Python编写一个国际象棋AI程序
最近我用Python做了一个国际象棋程序并把代码发布在Github上了.这个代码不到1000行,大概20%用来实现AI.在这篇文章中我会介绍这个AI如何工作,每一个部分做什么,它为什么能那样工作起来. ...
- python国际象棋ai程序_用 Python 编写一个国际象棋 AI 程序
最近我用Python做了一个国际象棋程序并把代码发布在Github上了.这个代码不到1000行,大概20%用来实现AI.在这篇文章中我会介绍这个AI如何工作,每一个部分做什么,它为什么能那样工作起来. ...
- java语言打印1到10的偶数_#Java编程# 编写一个应用程序创建两个线程,一个线程打印输出1~100之间所有的奇数,另外一 求写一个用JAVA求1~...
import java.util.Random; class A extends Thread { \tint i=1; \tRandom r=new Random(); \tpublic void ...
- c语言中fact函数怎么调用,C语言程序题: 1、编写一个求n!的函数fact(n),要求fact函数分别用递归和非递归两种方法实现...
点击查看C语言程序题: 1.编写一个求n!的函数fact(n),要求fact函数分别用递归和非递归两种方法实现具体信息 答:int fac(int n) //非递归{int f=1; for(;n;) ...
- java十个整数相反顺序_编写程序,对输入的一个整数,按相反顺序输出该数。例如,输入为 3578, 输出为 8753。...
编写程序,对输入的一个整数,按相反顺序输出该数.例如,输入为 3578, 输出为 8753. package HomeWork08; import java.util.Scanner; public ...
- 几乎所有的RPG游戏(一种源自《龙与地下城》的游戏类型)在进入游戏时都会让用户自己来创建自己喜欢的角色。本次上机要求编写一个简化的创建游戏角色的程序。
一:题目分析 1.功能描述 几乎所有的RPG游戏(一种源自<龙与地下城>的游戏类型)在进入游戏时都会让用户自己来创建自己喜欢的角色.本次上机要求编写一个简化的创建游戏角色的程序. 2.游戏 ...
- 编写一个SQL查询来报告 Person 表中每个人的姓、名、城市和州。如果 personId 的地址不在 Address 表中,则报告为空 null 【杭州多测师】【杭州多测师_王sir】...
编写一个SQL查询来报告 Person 表中每个人的姓.名.城市和州.如果 personId 的地址不在 Address 表中,则报告为空 null . 以 任意顺序 返回结果表. 示例 : Per ...
- 1. 在顺序存储结构的职工工资表中,职工工资信息包括:职工号(no)、姓名(name )、职称(pro)、工资(sal)等四项信息,请编写一完整的程序。
在顺序存储结构的职工工资表中,职工工资信息包括:职工号(no).姓名(name ).职称(pro).工资(sal)等四项信息,请编写一完整的程序,实现以下功能: (1)创建信息表:从键盘读入所有职工的 ...
- java写便签_如何编写一个便签程序(用Java语言编写)
如何编写一个便签程序(用Java语言编写) 热度:336 发布时间:2011-02-18 11:44:16 如何编写一个便签程序(用Java语言编写) 因为以前没有好好学习Java,都搞忘了,请大 ...
最新文章
- linux 相册管理,图片管理(时间线、相册管理)- 深度看图 -Deepin深度系统用户手册...
- Timus 1018 树形DP
- MapReduce运行机制
- python 最短路径算法_python Dijkstra算法实现最短路径问题的方法
- EfficientNetV2:训练速度快了5~10x,更小,更快,精度更高的EfficientNet
- Type class-Typeclass-泛型基础上的二次抽象
- 今天又遇到了一个问题
- 4.DTD - 元素 - 属性
- 计算机服务怎么打开flash,快速讲解Win10自带的浏览器如何开启Adobe Flash?
- 手动卸载McAfee
- js获取浏览器默认语言设置
- oa处理会签流程图_关于合同会签OA流程使用说明
- 如何在企业微信中使用微搭低代码
- countifs多条件排序_使用Excel COUNTIFS进行多个条件计数
- keras的model保存和载入
- 如何让同步/刷新的图标(el-icon-refresh)旋转起来
- 163邮箱申请注册条件,邮件注册申请,邮箱的格式怎么写?
- CSS实现内容强制不换行、自动换行、强制换行
- amt是什么意思_汽车中的AT、MT和AMT是什么意思?有什么区别?
- 【我的OpenGL学习进阶之旅】什么是TGA文件以及如何打开TGA文件?
热门文章
- python必备入门代码-学习Python必备的八大知识板块,学好这些你就算入门啦~
- 学python有什么用-为什么要学Python?学了有什么用?
- python不会英语不会数学怎么自学-零基础想自学PYTHON如果补数学怎么补?
- 学python可以做什么职业-学完Python,能找到什么工作?工资多少?
- python可以自学编程吗-编程学习第一步,让你20天搞定Python编程
- Vue SEO解决方案
- android ble 蓝牙绑定流程,BLE 配对与绑定过程详细解析
- Ajax实现搜索提示框~超级详细
- css-font字体和文本样式
- 主流H.264编码器对比测试 (MSU出品)