数据结构

数据结构练习其一

#include "stdio.h"
#define MaxSize 10
/*静态顺序表的各种操作
向顺序表中插入元素
参数Sqlist:表的首地址
参数*len:表的长度
参数i:插入元素的位置
参数x:待插入的元素值*/
int insertElem(int Sqlist[],int *len,int i,int x);
int DelElem(int Sqlist[],int *len,int i);
int main(int argc, char const *argv[])
{
    int Sqlist[MaxSize];
    int len;
    int i;
    for (i = 0;i < 6;i++){          //从键盘输入6个整数
        scanf("%d",&Sqlist[i]);
    }
    len = 6;
    for(i = 0;i < len;i ++){
        printf("%d\n",Sqlist[i]);   //顺序输出顺序表的6个整数
    }
    printf("The spare length is %d\n",MaxSize-len);//显示表中的剩余空间
    insertElem(Sqlist,&len,3,0);    //在表中的第3个位置插入整数0
    for(i = 0;i < len;i++){
        printf("%d\n",Sqlist[i]);   //输出顺序表中的所有元素
    }
    printf("The spare length is %d\n",MaxSize-len);
    insertElem(Sqlist,&len,11,0);
    DelElem(Sqlist,&len,6);
    for(i = 0;i < len;i++){
        printf("%d\n", Sqlist[i]);
    }
    printf("The spare length is %d\n",MaxSize-len);
    return 0;
}
int insertElem(int Sqlist[],int *len,int i,int x){
    int t;
    if(*len == MaxSize || i < 1 || i > *len+1){
        printf("This insert is illegal\n");
        return -1;
    }
    for(t = *len-1;t >= i-1;t --){          //改变顺序表要插入值的后面数据的顺序
        Sqlist[t+1] = Sqlist[t];    
    }
    Sqlist[i-1] = x;
    *len = *len+1;
    return 0;
}
int DelElem(int Sqlist[],int *len,int i){
    int j;
    if(i < 1 || i > *len){
        printf("This dele is illegal\n");
        return -1;
    }
    for(j = i; j <= *len-1;j++){    //改变顺序表要插入值的后面数据的顺序
        Sqlist[j-1] = Sqlist[j];
    }
    *len = *len-1;
    return 0;
}
... prompt'''

运行效果图

运行效果图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值