亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? sortdlg.cpp

?? 數(shù)據(jù)結(jié)構(gòu)的排序算法大家都聽(tīng)說(shuō)過(guò)吧
?? CPP
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
// sortDlg.cpp : implementation file
//

#include "stdafx.h"
#include "sort.h"
#include "sortDlg.h"
#include "SortObject.h"
#include <math.h>
#include <time.h>
#include <afxmt.h>

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

#define PI 3.1415926

/////////////////////////////////////////////////////////////////////////////
// CAboutDlg dialog used for App About

class CAboutDlg : public CDialog
{
public:
	CAboutDlg();

// Dialog Data
	//{{AFX_DATA(CAboutDlg)
	enum { IDD = IDD_ABOUTBOX };
	//}}AFX_DATA

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CAboutDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:
	//{{AFX_MSG(CAboutDlg)
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
	//{{AFX_DATA_INIT(CAboutDlg)
	//}}AFX_DATA_INIT
}

void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CAboutDlg)
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
	//{{AFX_MSG_MAP(CAboutDlg)
		// No message handlers
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CSortDlg dialog

CSortDlg::CSortDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CSortDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CSortDlg)
		// NOTE: the ClassWizard will add member initialization here
	//}}AFX_DATA_INIT
	// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}

void CSortDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CSortDlg)
		// NOTE: the ClassWizard will add DDX and DDV calls here
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CSortDlg, CDialog)
	//{{AFX_MSG_MAP(CSortDlg)
	ON_WM_SYSCOMMAND()
	ON_WM_PAINT()
	ON_WM_QUERYDRAGICON()
	ON_COMMAND(IDM_Disperse_Member, OnDisperseMember)
	ON_COMMAND(IDM_CREAT_NUMBER, OnCreatNumber)
	ON_COMMAND(IDM_Muster_Member, OnMusterMember)
	ON_COMMAND(IDM_Bubble_Sort, OnBubbleSort)
	ON_COMMAND(IDM_Exchange_Sort, OnExchangeSort)
	ON_COMMAND(IDM_Selection_Sort, OnSelectionSort)
	ON_COMMAND(IDM_INSERT_SORT, OnInsertSort)
	ON_COMMAND(IDM_QUICK_SORT, OnQuickSort)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CSortDlg message handlers

BOOL CSortDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	// Add "About..." menu item to system menu.

	// IDM_ABOUTBOX must be in the system command range.
	ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
	ASSERT(IDM_ABOUTBOX < 0xF000);

	CMenu* pSysMenu = GetSystemMenu(FALSE);
	if (pSysMenu != NULL)
	{
		CString strAboutMenu;
		strAboutMenu.LoadString(IDS_ABOUTBOX);
		if (!strAboutMenu.IsEmpty())
		{
			pSysMenu->AppendMenu(MF_SEPARATOR);
			pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
		}
	}

	// Set the icon for this dialog.  The framework does this automatically
	//  when the application's main window is not a dialog
	SetIcon(m_hIcon, TRUE);			// Set big icon
	SetIcon(m_hIcon, FALSE);		// Set small icon
	
	// TODO: Add extra initialization here
	
	return TRUE;  // return TRUE  unless you set the focus to a control
}

void CSortDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
	if ((nID & 0xFFF0) == IDM_ABOUTBOX)
	{
		CAboutDlg dlgAbout;
		dlgAbout.DoModal();
	}
	else
	{
		CDialog::OnSysCommand(nID, lParam);
	}
}

// If you add a minimize button to your dialog, you will need the code below
//  to draw the icon.  For MFC applications using the document/view model,
//  this is automatically done for you by the framework.

void CSortDlg::OnPaint() 
{
	if (IsIconic())
	{
		CPaintDC dc(this); // device context for painting

		SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);

		// Center icon in client rectangle
		int cxIcon = GetSystemMetrics(SM_CXICON);
		int cyIcon = GetSystemMetrics(SM_CYICON);
		CRect rect;
		GetClientRect(&rect);
		int x = (rect.Width() - cxIcon + 1) / 2;
		int y = (rect.Height() - cyIcon + 1) / 2;

		// Draw the icon
		dc.DrawIcon(x, y, m_hIcon);
	}
	else
	{
		CDialog::OnPaint();
	}
}

// The system calls this to obtain the cursor to display while the user drags
//  the minimized window.
HCURSOR CSortDlg::OnQueryDragIcon()
{
	return (HCURSOR) m_hIcon;
}

void CSortDlg::OnDisperseMember() 
{
	CRect rect;
	GetClientRect (&rect) ;
	CClientDC dc (this) ;
	dc.SetBkColor(RGB(100,100,255));
	dc.FillRect(&rect,&CBrush(RGB(100,100,255)));
	//將待排序的對(duì)象分布在一個(gè)圓上
	for(int i=0;i<SORT_OBJECT_NUM;i++)
	{
		//繪制外框
		dc.DrawEdge(&CRect(
			rect.right/2+150*cos(2*PI*i/10.0)-10,
			rect.bottom/2+150*sin(2*PI*i/10.0)-10,
			rect.right/2+150*cos(2*PI*i/10.0)+10,
			rect.bottom/2+150*sin(2*PI*i/10.0)+10),
			BDR_RAISEDINNER,
			BF_RECT
			);
		//顯示待排序?qū)ο竺?		CString strName;
		strName.Format("%d",i);		
		dc.TextOut(rect.right/2+150*cos(2*PI*i/10.0)-5,
			rect.bottom/2+150*sin(2*PI*i/10.0)-8,
			strName);		
	}
}

void CSortDlg::OnCreatNumber() 
{
	// TODO: Add your command handler code here
	CRect rect;
	GetClientRect (&rect) ;
	CClientDC dc (this) ;

    dc.FillRect(&CRect(0,0,250,150),&CBrush(RGB(100,100,255)));

	dc.SetBkColor(RGB(100,100,255));
	// Seed the random-number generator with current time
    srand( (unsigned)time( NULL ) );
	//產(chǎn)生SORT_OBJECT_NUM個(gè)3位或4位的數(shù)字
	for( int i = 0; i < SORT_OBJECT_NUM;i++ )
	{
		//產(chǎn)生3位或4位數(shù)字
		int temp;
		temp = rand();
		if(temp%2==0)  //產(chǎn)生3位數(shù)字
		{
			while(temp%1000 < 100)
			{
				temp = rand();				
			}
			sortObject[i].iNumber = temp%1000;
		}
		else           //產(chǎn)生4位數(shù)字
		{ 
			while(temp%10000 < 1000)
			{
				temp = rand();				
			}
			sortObject[i].iNumber = temp%10000;
		}   
		//賦予名字和初始序號(hào)
		sortObject[i].iName = i;
		sortObject[i].iSeq = i;
		//顯示獲得的數(shù)字
		CString strNum;
		strNum.Format("%4d",sortObject[i].iNumber);		
		dc.TextOut(rect.right/2+150*cos(2*PI*i/10.0)-15,
			rect.bottom/2+150*sin(2*PI*i/10.0)-30,
			strNum);	
	}	
}

void CSortDlg::OnMusterMember() 
{
	CClientDC dc (this) ;
    dc.FillRect(&CRect(0,0,250,150),&CBrush(RGB(100,100,255)));

	CRect rect;
	GetClientRect(&rect) ;
	InitObjectCoord(rect);

	dc.SetBkColor(RGB(100,100,255));
	dc.FillRect(&rect,&CBrush(RGB(100,100,255)));

	for(int i=0;i<SORT_OBJECT_NUM;i++)
	{
		//繪制外框
		dc.DrawEdge(&CRect(
			objectCoord[i].x-10,
			objectCoord[i].y-10,
			objectCoord[i].x+10,
			objectCoord[i].y+10),
			BDR_RAISEDINNER,
			BF_RECT
			);
		//顯示待排序?qū)ο竺?		CString strName;
		strName.Format("%d",i);		
		dc.TextOut(objectCoord[i].x-5,
			objectCoord[i].y-8,
			strName);	
		//顯示獲得的數(shù)字
		CString strNum;
		strNum.Format("%4d",sortObject[i].iNumber);		
		dc.TextOut(objectCoord[i].x-15,
			objectCoord[i].y-30,
			strNum);	
	}
}

void CSortDlg::OnBubbleSort() 
{
	CClientDC dc (this) ;
	dc.SetBkColor(RGB(100,100,255));
	dc.FillRect(&CRect(0,0,250,150),&CBrush(RGB(100,100,255)));
	int objectName[SORT_OBJECT_NUM]; //每個(gè)位置對(duì)應(yīng)的待排序?qū)ο竺?	//初始化每個(gè)位置對(duì)應(yīng)的待排序?qū)ο竺?	for(int i=0;i<SORT_OBJECT_NUM;i++)
	{
		objectName[i] = i;
	}
	TRACE("\n");			
	for(int w=0;w<SORT_OBJECT_NUM;w++)
	{
		TRACE("%d ",sortObject[objectName[w]].iNumber);
	}
	//冒泡排序
	for(i=1;i<SORT_OBJECT_NUM;i++) 
	{ 
		for(int j=SORT_OBJECT_NUM-1;j>=i;j--) 
		{ 
			
			if(sortObject[objectName[j]].iNumber < sortObject[objectName[j-1]].iNumber) 
			{ 				
				//交換序號(hào)
				int iTemp;
				iTemp = sortObject[objectName[j-1]].iSeq; 
				sortObject[objectName[j-1]].iSeq = sortObject[objectName[j]].iSeq; 
				sortObject[objectName[j]].iSeq = iTemp; 
				//交換對(duì)象名
				iTemp = objectName[j];
				objectName[j] = objectName[j-1];
                objectName[j-1] = iTemp;
                //顯示變化
				CString strName;
				CString strNum;				
				//顯示j-1位置的對(duì)象
				strName.Format("%d",sortObject[objectName[j-1]].iName);		
				dc.TextOut(objectCoord[sortObject[objectName[j-1]].iSeq].x-5,
					objectCoord[sortObject[objectName[j-1]].iSeq].y-8,
					strName);
				if(sortObject[objectName[j-1]].iNumber<1000)
				{				
					strNum.Format("  %d",sortObject[objectName[j-1]].iNumber);
				}
				else
				{
					strNum.Format("%d",sortObject[objectName[j-1]].iNumber);
				}
				dc.TextOut(objectCoord[sortObject[objectName[j-1]].iSeq].x-15,
					objectCoord[sortObject[objectName[j-1]].iSeq].y-30,
					strNum);
				//顯示j位置的對(duì)象
				strName.Format("%d",sortObject[objectName[j]].iName);		
				dc.TextOut(objectCoord[sortObject[objectName[j]].iSeq].x-5,
					objectCoord[sortObject[objectName[j]].iSeq].y-8,
					strName);
				if(sortObject[objectName[j]].iNumber<1000)
				{
					strNum.Format("  %d",sortObject[objectName[j]].iNumber);		
				}
				else
				{

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产麻豆精品在线观看| 91浏览器打开| 亚洲在线视频一区| 欧美xxxxxxxx| 欧美亚日韩国产aⅴ精品中极品| 久久国产人妖系列| 亚洲高清不卡在线| 中文字幕av资源一区| 欧美电影一区二区三区| 97精品电影院| 国产高清不卡一区| 免费视频最近日韩| 亚洲一区二区三区视频在线 | 男人的天堂亚洲一区| 中文字幕在线视频一区| 欧美成人猛片aaaaaaa| 欧美日韩久久一区二区| 91亚洲精华国产精华精华液| 国产不卡视频在线观看| 经典三级视频一区| 奇米一区二区三区| 午夜精品久久久久影视| 一区二区高清视频在线观看| 国产精品第五页| 久久精品日产第一区二区三区高清版| 日韩欧美在线网站| 欧美日韩在线电影| 在线观看国产91| 色综合久久久久久久久| www.亚洲免费av| 丁香婷婷综合激情五月色| 激情亚洲综合在线| 国产真实精品久久二三区| 久久国产精品99久久人人澡| 天天色 色综合| 亚洲444eee在线观看| 亚洲综合一区在线| 一区二区三区在线免费| 亚洲啪啪综合av一区二区三区| 国产精品视频一二| 中文字幕一区二区三区视频 | 久久久久久免费网| 26uuu久久综合| 国产日产精品1区| 青青草一区二区三区| 亚洲第一会所有码转帖| 亚洲成a人片在线不卡一二三区| 一区二区三区精品视频在线| 亚洲综合免费观看高清完整版 | 欧美精品粉嫩高潮一区二区| 欧美性大战xxxxx久久久| 欧美视频一区在线观看| 欧美久久久久久蜜桃| 欧美一区二区三区系列电影| 日韩欧美一区二区免费| 精品电影一区二区| 国产亚洲欧洲997久久综合| 国产日产欧产精品推荐色| 国产精品国产精品国产专区不蜜 | 欧美v国产在线一区二区三区| 久久一区二区三区国产精品| 欧美国产视频在线| 亚洲乱码中文字幕| 午夜一区二区三区在线观看| 美女视频第一区二区三区免费观看网站 | 91麻豆精品国产自产在线| 欧美成人激情免费网| 欧美国产一区二区| 亚洲一区中文在线| 久久成人精品无人区| 高清shemale亚洲人妖| 色av成人天堂桃色av| 7777精品伊人久久久大香线蕉的| 精品区一区二区| 中文字幕中文字幕一区| 视频一区视频二区中文| 国产成人综合在线观看| 色综合中文字幕| 日韩一区二区在线看| 中文字幕一区二区三| 天堂一区二区在线免费观看| 国产剧情一区二区| 欧美特级限制片免费在线观看| 日韩欧美久久久| 中文字幕一区二区三| 免费久久精品视频| 91美女福利视频| 日韩精品一区二区三区在线播放| 国产精品理伦片| 捆绑调教一区二区三区| 91农村精品一区二区在线| 日韩你懂的在线播放| 亚洲免费观看高清完整版在线| 久久精品国产99国产精品| 91视频一区二区| 久久久国产精品麻豆| 日韩中文字幕一区二区三区| 成人激情免费网站| 日韩精品中文字幕在线一区| 丁香激情综合五月| 欧美一区二区视频网站| 亚洲卡通欧美制服中文| 国内精品不卡在线| 欧美日韩在线播放三区| 国产精品传媒入口麻豆| 韩国v欧美v亚洲v日本v| 欧美三级资源在线| 亚洲天堂2014| 国产成人在线看| 欧美电视剧在线观看完整版| 午夜在线成人av| 日本乱人伦aⅴ精品| 中文一区二区完整视频在线观看| 奇米色777欧美一区二区| 日本道色综合久久| 国产精品美女久久久久aⅴ | 欧美日韩在线三级| 亚洲视频一区在线观看| 国产sm精品调教视频网站| 日韩视频免费直播| 午夜精品福利一区二区三区蜜桃| 91亚洲国产成人精品一区二区三| 国产拍揄自揄精品视频麻豆| 国产在线观看免费一区| 欧美一区二区免费视频| 亚洲va天堂va国产va久| 91久久线看在观草草青青| 自拍偷自拍亚洲精品播放| 成人亚洲精品久久久久软件| 久久噜噜亚洲综合| 激情文学综合网| 久久亚洲捆绑美女| 国内精品久久久久影院一蜜桃| 欧美一区二区三区在线电影| 丝袜亚洲精品中文字幕一区| 欧美二区三区的天堂| 日韩国产精品91| 欧美一区二区视频在线观看 | 91网上在线视频| 中文字幕一区二区三区av| 成人av免费观看| 自拍偷拍国产亚洲| aaa欧美日韩| 亚洲毛片av在线| 色婷婷亚洲精品| 亚洲高清视频中文字幕| 欧美日韩成人一区二区| 日韩黄色免费网站| 日韩精品一区二区三区三区免费| 乱一区二区av| 国产拍欧美日韩视频二区| 99国内精品久久| 一区二区三区蜜桃| 91精品一区二区三区在线观看| 免费不卡在线视频| 久久久综合视频| 97se亚洲国产综合自在线观| 一区二区免费看| 91精品国产日韩91久久久久久| 久久精品99国产精品| 亚洲国产成人一区二区三区| 91色在线porny| 天堂成人免费av电影一区| 日韩视频一区在线观看| 在线91免费看| 国产乱码精品一区二区三| 1区2区3区精品视频| 欧美日韩国产精品自在自线| 九九久久精品视频| 国产精品福利av | 亚洲国产精品t66y| 在线亚洲人成电影网站色www| 丝袜美腿亚洲色图| www国产精品av| 91麻豆国产香蕉久久精品| 五月婷婷激情综合| 国产片一区二区| 欧美精品日韩一本| 国产**成人网毛片九色| 一区二区三区国产精品| 欧美xxxxx牲另类人与| 91污在线观看| 国产真实乱子伦精品视频| 一区二区三区中文字幕| 久久久午夜电影| 欧美欧美欧美欧美首页| 风间由美中文字幕在线看视频国产欧美| 亚洲综合色网站| 国产精品污www在线观看| 51精品视频一区二区三区| 成人美女视频在线看| 蜜桃久久久久久| 亚洲女同女同女同女同女同69| 日韩欧美一二三四区| 色综合中文字幕| 福利电影一区二区| 日本在线不卡视频一二三区| 亚洲欧美在线另类| 2024国产精品视频| 欧美高清dvd|