顺序表操作.c

来自「顺序表上顺序查找,数据结构的一种」· C语言 代码 · 共 51 行

C
51
字号
#include <stdio.h>

#define MAXSIZE 100
#define KEYTYPE int 

typedef struct
{
    KEYTYPE key;
}SSELEMENT;

typedef struct
{
    SSELEMENT r[MAXSIZE];
	int len;
}SSTABLE;

int search_seq(KEYTYPE k,SSTABLE *st)
{
	int j;
	j=st->len; //顺序表元素个数
	st->r[0].key=k;//st->r[0]单元作为监视哨
	while(st->r[j].key!=k) j--;//顺序表从后向前查找
	return j;
}

main()
{
	//顺序表上查找元素
	SSTABLE a;
	int i,j,k;
	printf("请输入顺序表元素,元素为整型量,用空格分开,-99为结束标志:\n");
	j=0;k=1;i=0;scanf("%d",&i);
	while(i!=-99)//输入顺序表元素
	{
		j++;
		a.r[k].key=i;
		k++;
		scanf("%d",&i);
	}	
	a.len=j;
	printf("\n顺序表元素列表显示:");
	for(i=1;i<=a.len;i++)
		printf("%d  ",a.r[i].key);
	printf("\n");
	printf("\n输入待查元素关键字:");
	scanf("%d",&i);
	k=search_seq(i,&a);
	if(k==0)printf("表中待查元素不存在\n\n");
	else printf("表中待查元素存在\n\n");	
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?