zoukankan      html  css  js  c++  java
  • 《静态顺序表的练习》

    //顺序表的一些基本操作
    #include<stdio.h>
    #define MaxSize 10

    //向顺序表中插入元素
    void InsertElem(int Sqlist[],int *len,int i,int x)
    {//向顺序表中第i个位置上插入元素x
    int t;
    if(*len==MaxSize || i<1 || i>*len+1)
    {
    printf("插入位置非法!");
    return;
    }
    for(t = *len-1;t>=i-1;t--)
    Sqlist[t+1] = Sqlist[t];
    Sqlist[i-1] = x;
    *len = *len+1;
    }

    //向顺序表中删除元素
    void DelElem(int Sqlist[],int *len,int i)
    {//删除顺序表中第i个元素
    int j;
    if(i<1 || i>*len)
    {
    printf("删除位置非法!");
    return;
    }
    for(j=i;j<=*len-1;j++)
    Sqlist[j-1] = Sqlist[j];
    *len = *len - 1;
    }

    //创建一个静态顺序表
    void CreatList(int Sqlist[],int n)
    {
    int i;
    printf("请输入%d个整数(以空格分开):",n);
    for(i=0;i<n;i++)
    scanf("%d",&Sqlist[i]);
    return;
    }

    //遍历顺序表
    void EverElem(int Sqlist[],int *len)
    {
    int i;
    printf("顺序表中的元素如下:");
    for(i=0;i<*len;i++)
    printf("%3d",Sqlist[i]);
    printf(" 顺序表的剩余空间是:%d",MaxSize - *len);
    printf(" ");
    return;
    }
    //主函数
    int main()
    {
    int Sqlist[MaxSize]; //定义一个静态顺序表
    int n,len,e1,e2,e3;
    //调用CreatList(int Sqlist[],int n)函数,初始化一个静态顺序表
    printf("请输入你要的数字:");
    scanf("%d",&n);
    CreatList(Sqlist,n);
    printf(" ");

    len = n;
    //调用EverElem(int Sqlist[],int *len)函数,输出顺序表中的元素
    EverElem(Sqlist,&len);

    //调用InsertElem(int Sqlist[],int &len,int i,int x)函数,向顺序表中插入元素
    printf("请输入你要插入的位置:");
    scanf("%d",&e1);
    printf("请输入你要插入的元素:");
    scanf("%d",&e2);
    InsertElem(Sqlist,&len,e1,e2);

    //调用InsertElem(int Sqlist[],int &len,int i,int x)函数,向顺序表中插入元素
    EverElem(Sqlist,&len);

    //调用InsertElem(int Sqlist[],int &len,int i,int x)函数,向顺序表中插入元素(插入错误的位置)
    printf("请输入你要插入的位置:(输入大于10以上的数)");
    scanf("%d",&e1);
    printf("请输入你要插入的元素:");
    scanf("%d",&e2);
    InsertElem(Sqlist,&len,e1,e2);
    printf(" ");

    //调用DelElem(int Sqlist[],int *len,int i)函数,删除指定的元素
    printf("请输入你要删除的元素序号:");
    scanf("%d",&e3);
    DelElem(Sqlist,&len,e3);
    //调用EverElem(int Sqlist[],int *len)函数,输出顺序表中的元素
    EverElem(Sqlist,&len);
    printf(" ");
    return 0;
    }

  • 相关阅读:
    龙小树|第一篇博客随笔
    机器学习相关网址
    希腊字母表
    博客园美化
    论文检索常用网站
    这些年,我用过的良心网站,分享给大家
    MATLAB小函数:展示灰度图像数据集的部分样例
    基于图嵌入的高斯混合变分自编码器的深度聚类(Deep Clustering by Gaussian Mixture Variational Autoencoders with Graph Embedding, DGG)
    MATLAB实例:二维散点图
    MATLAB实例:多元函数拟合(线性与非线性)
  • 原文地址:https://www.cnblogs.com/sun-/p/4867557.html
Copyright © 2011-2022 走看看