#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define maxsize 100
typedef struct {
char elem[100][50];
int len;}data;
void insertlist(data *L,int i,char *s)
{
int j;
if(i>=1&&i<=L->len+1)
{
for(j=L->len-1;j>=i-1;j--)
strcpy(L->elem[j+1],L->elem[j]);
strcpy(L->elem[i-1],s);
L->len++;
}
}
int getlist(data *L,char *s)
{
int i;
for(i=0;i<L->len;i++)
{
if(strcmp(L->elem[i],s)==0)
break;
}
return i+1;
}
void deletelist(data *L,char *s)
{
int j,i;
i=getlist(L,s);
for(j=i;j<L->len;j++)
strcpy(L->elem[j-1],L->elem[j]);
L->len--;
}
void outlist(data *L)
{
int i;
for(i=0;i<L->len;i++)
printf("%s ",L->elem[i]);
putchar('\n');
}
int main()
{
data *L;
char ch[200],s[200];
int n;
L=(data *)malloc(sizeof(data));
L->len=0;
while(scanf("%s",ch)!=EOF)
{
if(strcmp(ch,"insert")==0)
{
scanf("%d %s",&n,s);
insertlist(L,n,s);
}
else if(strcmp(ch,"delete")==0)
{
scanf("%s",s);
deletelist(L,s);
}
else if(strcmp(ch,"search")==0)
{
scanf("%s",s);
printf("%d\n",getlist(L,s));
}
else if(strcmp(ch,"show")==0)
{
outlist(L);
}
}
return 0;
}
0.0分
0 人评分
【数组的距离】 (C语言代码)浏览:740 |
【亲和数】 (C语言代码)浏览:859 |
【亲和数】 (C语言代码)浏览:503 |
WU-拆分位数 (C++代码)浏览:785 |
三角形 (C语言代码)浏览:914 |
1126题解浏览:595 |
关于float,double变量的几点说明浏览:1810 |
C语言训练-亲密数 (C语言描述,反正怎么都能对)浏览:2169 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:470 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:546 |