c++ 程序设计问题 急!!!

来源:百度知道 编辑:UC知道 时间:2024/06/19 15:06:05
题目:编程实现二分查找

要求:
1.在程序中实现初始化一长度为10的整型数组并显示,从键盘输入待查找数据,判断该数组是否在数组中,如果在,则还要给出该数在原数组中的位置。
2.排序(方法任意)和查找部分分别用一个函数实现,整个程序要求用多文件结构实现,即排序和查找的函数要在头文件中声明
3.注意在程序中适当的给出注释

fn.h
#ifndef fn_h
#define fn_h
//声名
int search(double m);//有返回值
void asend();
#endif
fn.cpp
#include"fn.h"
int search(double m,double a[])
{
for(int i=0;i<10;i++)
{
if(a[i]==m)//判断
return i;
else
{
return -1; //找不到的情况
continue;//跳出此次循环
}
}
}
void asend(double n[])//要改变数字位置,所以必须把数组传进去
{
for(int i=0;i<10;i++)
{
for(int j=i;j<10;j++)
{
if(n[i]>n[j])//换位,很常用,可以将此另定义一个函数。
{
double a=n[i];
n[i]=n[j];
n[j]=a;
}
}
}
}
main.cpp
#include"iostream.h"
#include"fn.h"

void main()
{
double num[10]={12,3,5,46,9,87,5,54,62,31};
for(int i=0;i<10;i++)
cout<<num[i]<<" ";
cout<<endl;
double c;
cout<<"请输入要查找的数:"<<endl;
cin>>c;
int f;
f=search(c,n