⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dialog2.cpp

📁 多关键字排序算法,按照多个关键字来排序的算法,关于算法和数据结构的原代码
💻 CPP
字号:
// dialog2.cpp : implementation file
//

#include "stdafx.h"
#include "gaokao.h"
#include "dialog2.h"
#include "gaokaoDlg.h"

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

/////////////////////////////////////////////////////////////////////////////
// dialog2 dialog


dialog2::dialog2(CWnd* pParent /*=NULL*/)
	: CDialog(dialog2::IDD, pParent)
{
	//{{AFX_DATA_INIT(dialog2)
	m_NNumber = _T("");
	//}}AFX_DATA_INIT
}


void dialog2::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(dialog2)
	DDX_Text(pDX, IDC_Number, m_NNumber);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(dialog2, CDialog)
	//{{AFX_MSG_MAP(dialog2)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// dialog2 message handlers

void dialog2::OnOK() 
{
    int i=m_NNumber.GetLength();
	m_ListCtrl.DeleteAllItems();         //先清除所有的表现
	for(int k=6;k>=0;k--) m_ListCtrl.DeleteColumn(k);  //再清除所有的列

	LV_COLUMN lvColumn;
	lvColumn.mask=LVCF_FMT|LVCF_SUBITEM|LVCF_TEXT|LVCF_WIDTH;
	lvColumn.fmt=LVCFMT_LEFT;
	lvColumn.cx=60;  //设置列的宽度
	lvColumn.iSubItem=0;
	lvColumn.pszText="姓名";
	m_ListCtrl.InsertColumn(0,&lvColumn);
	lvColumn.iSubItem=1;
	lvColumn.pszText="语文";
	m_ListCtrl.InsertColumn(1,&lvColumn);
	lvColumn.pszText="数学";
	m_ListCtrl.InsertColumn(2,&lvColumn);
	lvColumn.pszText="英语";
	m_ListCtrl.InsertColumn(3,&lvColumn);
	lvColumn.pszText="X科";
	m_ListCtrl.InsertColumn(4,&lvColumn);
	lvColumn.pszText="综合";
	m_ListCtrl.InsertColumn(5,&lvColumn);

	CString str;
	int i,j,score,n;
	srand(time(NULL));
//	n=10+rand()%3;
	n=1000;
	InitSLList(L,n);
	for(i=1;i<=n;i++)
	{
		for(j=0;j<4;j++)
		{
			L.r[i].name[j]=65+rand()%26;
		}
		str.Format("%s",L.r[i].name);
		m_ListCtrl.InsertItem(i-1,str);
		for(j=1;j<=4;j++)
		{
			score=rand()%101;
			if(score<60)                       //if在这里是为了提高整体成绩,不让太多成绩低于60分
			{
				score=rand()%101;
			}
			L.r[i].keys[j]=score;            
			str.Format("%d",L.r[i].keys[j]);
			m_ListCtrl.SetItemText(i-1,j,str);
		}
		L.r[i].keys[5]=L.r[i].keys[1]+L.r[i].keys[2]+L.r[i].keys[3]+L.r[i].keys[4];
		str.Format("%d",L.r[i].keys[5]);
		m_ListCtrl.SetItemText(i-1,j,str);
	}

	copy=L;
	CDialog::OnOK();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -