• 《静态顺序表的练习》


    //顺序表的一些基本操作
    #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;
    }

  • 相关阅读:
    前端面试题(08)
    虚拟的DOM与DOM diff
    前端面试题(07)
    前端面试题(06)
    前端面试题(05)
    前端面试题(04)
    canvas(02绘制图形)
    前端面试题03
    HTB-靶机-Irked
    HTB-靶机-RedCross
  • 原文地址:https://www.cnblogs.com/sun-/p/4867557.html
Copyright © 2020-2023  润新知