关键词不能为空

当前您在: 主页 > 英语 >

数据结构C语言版 顺序查找

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2020-10-21 15:11
tags:按顺序

长毛鱼-鸡犬升天

2020年10月21日发(作者:乔培新)


*




*

#include
#include

#define N 5 数据元素个数

typedef int KeyType; 设关键字域为整型

typedef struct 数据元素类型(以教科书P215图9.1高考成绩为例)
{









long number;
char name[9];
int politics;
int Chinese;
int English;
int math;
int physics;
int chemistry;
int biology;
准考证号
姓名(4个汉字加1个串结束标志)
政治
语文
英语
数学
物理
化学
生物
关键字类型应为KeyType,域名应为key
数据结构C语言版 顺序查找
P216
编译环境:Dev-C++ 4.9.9.2
日期:2011年2月15日
KeyType key;
} ElemType;

typedef struct
{


数据元素存储空间基址,建表时按实际长度分配,0号单元留空
ElemType *elem;
表长度 int length;
}SSTable;

ElemType r[N] = {
{179324, 何芳芳
{179325, 陈红
{179326, 陆华
{179327, 张平
{179328, 赵小怡
}; 全局变量

#define total key 定义总分(total)为关键字



构造一个含n个数据元素的静态顺序查找表ST(数据来自全局数组r)。

int Creat_Seq(SSTable *ST,int n)
{









}

重建静态查找表为按关键字非降序排序。
void Ascend(SSTable *ST)
{

















}

构造一个含n个数据元素的静态按关键字非降序查找表ST。
数据来自全局数组r。
int Creat_Ord(SSTable *ST,int n)
{
int f;
f = Creat_Seq(ST,n);
int i,j,k;
for(i=1;i<(*ST).length;i++)
{













}
k=i;
(*ST).elem[0] = (*ST).elem[i]; 待比较值存[0]单元
for(j = i + 1; j <= (*ST).length; j++)





if((*ST).elem[j].key < (*ST).elem[0].key)
{


}
k = j;
(*ST).elem[0] = (*ST).elem[j];
int i;
(*ST).elem = (ElemType *)calloc(n+1,sizeof(ElemType));
动态生成n+1个数据元素空间(0号单元不用)
if(!(*ST).elem)


return 0;
*((*ST).elem+i)=r[i-1]; 将全局数组r的值依次赋给ST
for(i=1;i<=n;i++)
(*ST).length=n;
return 1;
if(k != i) 有更小的值则交换
{


}
(*ST).elem[k] = (*ST).elem[i];
(*ST).elem[i] = (*ST).elem[0];


if( f )
Ascend( ST );

return f;
}

销毁表ST。
int Destroy(SSTable *ST)
{





}

按顺序对ST的每个元素调用函数Visit()一次且仅一次。
int Traverse(SSTable ST, void (* Visit)(ElemType))
{






}

算法9.1 P217
在顺序表ST中顺序查找其关键字等于key的数据元素。若找到,则函数
值为该元素在表中的位置,否则为0。
int Search_Seq(SSTable ST,KeyType key)
{





}


void print(ElemType c) Traverse()调用的函数
{
printf(
, , cs, e,h,
int i;
[0].key = key; 哨兵
for(i = !([i].key == key); --i)
从后往前找
return i; 找不到时,i为0
ElemType *p;
int i;
p = ++; p指向第一个元素,第0个元素没有用
for(i = 1;i <= i++)
Visit(*p++);
return 1;
free((*ST).elem);
(*ST).elem = NULL;
(*ST).length = 0;

return 1;


,s,try,y,);
}

int main()
{






















SSTable st;
int i,s;
for(i=0;i r[i].total = r[i].politics + r[i].Chinese +



Creat_Seq(&st, N); 由全局数组产生静态查找表st
printf(准考证号 姓名 政治 语文 外语 数学 物理 化学 生物 总分n
Traverse(st,print); 按顺序输出静态查找表st

printf(请输入待查找人的总分:
scanf(
i = Search_Seq(st,s); 顺序查找
if( i )
print( *( + i) );
else
printf(没找到n

Destroy(&st);

system(
r[i].English + r[i].math
+ r[i].physics + r[i].chemistry + r[i].biology;
return 0;
}

*
输出效果:

准考证号 姓名 政治 语文 外语 数学 物理 化学 生物 总分
179324 何芳芳 85 89 98 100 93 80 47 592
179325 陈红 85 86 88 100 92 90 45 586
179326 陆华 78 75 90 80 95 88 37 543
179327 张平 82 80 78 98 84 96 40 558
179328 赵小怡 76 85 94 57 77 69 44 502
请输入待查找人的总分: 543
179326 陆华 78 75 90 80 95 88 37 543
请按任意键继续. . .

*

alwayswet-英语情景对话大全


英语月份-全球一共多少个国家


侃侃而谈的近义词-财务英文


康广仁-悄悄地什么


nda是什么意思-澡豆


伟大的英语-翁媪的拼音


狙击读音-国庆手抄报花边


易装癖-花萼



本文更新与2020-10-21 15:11,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/416285.html

数据结构C语言版 顺序查找的相关文章

  • 余华爱情经典语录,余华爱情句子

    余华的经典语录——余华《第七天》40、我不怕死,一点都不怕,只怕再也不能看见你——余华《第七天》4可是我再也没遇到一个像福贵这样令我难忘的人了,对自己的经历如此清楚,

    语文
  • 心情低落的图片压抑,心情低落的图片发朋友圈

    心情压抑的图片(心太累没人理解的说说带图片)1、有时候很想找个人倾诉一下,却又不知从何说起,最终是什么也不说,只想快点睡过去,告诉自己,明天就好了。有时候,突然会觉得

    语文
  • 经典古训100句图片大全,古训名言警句

    古代经典励志名言100句译:好的药物味苦但对治病有利;忠言劝诫的话听起来不顺耳却对人的行为有利。3良言一句三冬暖,恶语伤人六月寒。喷泉的高度不会超过它的源头;一个人的事

    语文
  • 关于青春奋斗的名人名言鲁迅,关于青年奋斗的名言鲁迅

    鲁迅名言名句大全励志1、世上本没有路,走的人多了自然便成了路。下面是我整理的鲁迅先生的名言名句大全,希望对你有所帮助!当生存时,还是将遭践踏,将遭删刈,直至于死亡而

    语文
  • 三国群英单机版手游礼包码,三国群英手机单机版攻略

    三国群英传7五神兽洞有什么用那是多一个武将技能。青龙飞升召唤出东方的守护兽,神兽之一的青龙。玄武怒流召唤出北方的守护兽,神兽之一的玄武。白虎傲啸召唤出西方的守护兽,

    语文
  • 不收费的情感挽回专家电话,情感挽回免费咨询

    免费的情感挽回机构(揭秘情感挽回机构骗局)1、牛牛(化名)向上海市公安局金山分局报案,称自己为了挽回与女友的感情,被一家名为“实花教育咨询”的情感咨询机构诈骗4万余元。

    语文