实验1查找与排序讲述.doc
文本预览下载声明
实验1 查找与排序
一、实验目的
(1)掌握查找的问题描述,实现线性查找算法及二分查找算法;
(2)熟悉排序的问题描述,实现插入排序算法。
二、实验内容
线性查找算法
#include stdio.h
void main()
{
int a[101]; //定义数组a,设置其长度为101
int i,n,num;
printf(**************************************************\n);
printf( 顺 序 查 找 算 法\n);
printf(**************************************************\n\n);
printf(您要在多少个数中进行线性查找,请输入(1~100):);
___________________________; //输入一个数值赋给变量n,表示数列长度
printf(\n);
while(________________________) //如果输入的数据列表长度不在[1,100]之间
{
________________________________________________
printf(您要在多少个数中进行线性查找,请输入(1~100):);
________________________
}
printf(请您输入第1个整数a[1]:);
scanf(%d,a[1]);
i=2;
while(________________________)
{
printf(_____________________________________________);
________________________
________________________
}
printf(\n输出数据列表:\n);
for(________________________)
{
printf(%6d,a[i]);
}
printf(\n\n);
do
{
printf(请输入要查找的数:);
_________________________; //输入一个整数赋给变量num,表示要查找的对象
i=1;
while(_________________________________________) //在数据列表内搜索num
{
i++;
}
if(________________________)
printf(该表中没有您要查找的数据!\n);
else
printf(________________________________________________);
} while (________________________); //若输入的待查找的数不是999,则可持续搜索。
}
二分查找算法
#include stdio.h
void main()
{
int a[101];
int i,n,num;
int Top,Bottom,Mid;
int flag=1; //如果在列表中找到数字,则值为1,否则为0
int loc=-1;//要查找的数在列表中的位置,如果loca=-1表示列表中没有这个数;如果有这个数,则它的值为所在的位置
printf(**************************************************\n);
printf( 折 半 查 找 算 法\n);
printf(**************************************************\n\n);
printf(您要在多少个数中进行折半查找,请输入(1~100):);
___________________________; //输入一个数值赋给变量n,表示数列长度
printf(\n);
while(________________________) //如果输入的数据列表长度不在[1,100]之间
{
________________________________________________
printf(您要在多少个数中进行折半查找,请输入(1~100):);
__________________
显示全部