找零钱这个问题很清楚,无非就是始终拿可以取的最大面值来找,最后就使得张数最小了,这个实现是在假设各种面值足够多的情况下。
首先拖出一个界面来,最下面是一个listbox控件
对应的代码:问题比较简单,有注释
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace test
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void buttonOk_Click(object sender, EventArgs e)
{
if (listMoney.Items.Count != 0) //第二次计算就清空,便于重复计算
listMoney.Items.Clear();