国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

一個二分法查找的圖形演示程序

2019-11-17 05:30:58
字體:
來源:轉載
供稿:網友
不知道這樣的演示效果怎么樣,因為屏幕大小的問題沒辦法輸出太多的數字,假如還有什么好的想法希望大家提出.#include <graphics.h>
void fun(int x[],int y,int z);/*具體排序過程*/
void Init();/*圖形初試化*/
void Close();/*圖形關閉*/
void Put(int x[],int y);/*輸出15個數字*/
void Up(int x);/*畫上箭*/
void Down(int x);/*畫下箭*/
void Mid(int x);/*畫中間箭*/
void Clr(int x);/*擦除畫面上的一些內容*/
void main(void)
{
 int a[15]={1,2,3,4,5,6,7,8,9,10,13,15,18,20,25};
 Init();
 Put(a,15);
 fun(a,5,15);
 Close();
}
void Mid(int n)/*畫中間鍵*/
{
 setcolor(WH99vE);/*中間箭的顏色為白色,以下三條線畫成了箭頭,以下兩個函數一樣*/
 line(25+n*40,120,25+n*40,80);
 line(25+n*40,120,20+n*40,110);
 line(25+n*40,120,30+n*40,110);
}
void Down(int n)/*畫上箭*/
{
 setcolor(6);
 line(25+n*40,120,25+n*40,80);
 line(25+n*40,120,20+n*40,110);
 line(25+n*40,120,30+n*40,110);
}
void Up(int n)/*畫下箭*/
{
 setcolor(6);
 line(25+n*40,180,25+n*40,220);
 line(25+n*40,180,20+n*40,190);
 line(25+n*40,180,30+n*40,190);
}
void Clr(int y)/*擦除畫面上的一些內容*/
{
  setfillstyle(SOLID_FILL,0);/*每次演示的時候先將下面顯示的文字給去處掉*/
  bar(0,y+50,640,y-50);/*這里是用矩形的方式*/
}
void Put(int a[],int n)/*一開始的輸出函數*/
{
 int i;
 char num[5];
 setcolor(GREEN);
 settextstyle(0,0,2);/*設置字體的大小*/
 for(i=0;i<n;i++)
 {
  s  outtextxy(20+i*40,150,num);
 }
 settextstyle(0,0,1);
 setcolor(BLUE);
 outtextxy(250,250,"anykey to continue");
 getch();
}
void fun(int a[],int y,int n)/*具體的查找*/
{
 int low,high,mid,i;
 char str1[5],str2[5];
 sprintf(str1,"%d",y);
 low=0;
 high=n-1;
 setcolor(RED);
 settextstyle(0,0,2);
 outtextxy(200,10,"FIND");
 outtextxy(330,10,str1);
 while(low<=high)
 {
  Clr(250);
  Clr(80);
  Clr(230);/*這里三個Clr是為了把屏幕上的箭頭和文字刪了*/
  mid=(high+low)/2;
  Up(high);
  Down(low);
  Mid(mid);/*畫好了三個箭頭后開始查找*/
  if(a[mid]==y)
  {
   outtextxy(300,250,"FIND");
   break;
  }
  if(a[mid]<y)
  {
   low=mid;
   sprintf(str2,"%d",a[mid]);
   outtextxy(250,250,str2);
   outtextxy(300,250,"<");
   outtextxy(350,250,str1);
  }
 if(a[mid]>y)
 {
  high=mid;
  sprintf(str2,"%d",a[mid]);
  outtextxy(250,250,str2);
  outtextxy(300,250,">");
  outtextxy(350,250,str1);
 }
 sleep(1);/*間隔一秒好執行下一次*/
 }
}void Init()/*圖形驅動*/
{
 int gd=DETECT,gm;
 initgraph(&gd,&gm,"c://tc");/*tc所在目錄的路徑*/
 cleardevice();
}
void Close()/*圖形驅動結束*/
{
 getch();
 closegraph();
}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南充市| 唐河县| 耒阳市| 深州市| 奎屯市| 清流县| 大足县| 阿尔山市| 磐石市| 积石山| 河南省| 和平县| 达孜县| 安岳县| 石屏县| 绥德县| 贵定县| 昌都县| 济阳县| 呼玛县| 马公市| 聊城市| 高碑店市| 太康县| 二手房| 长武县| 延吉市| 馆陶县| 武宁县| 德庆县| 桑日县| 凤山县| 陆良县| 通海县| 寿光市| 长岭县| 城固县| 韩城市| 柘荣县| 永平县| 永靖县|