当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > asp.net求3位不同数字的组合数

ASP.NET
Eric的无限级Tree演示
C#中操作Excel的方法(一)
Data Access Application Block V2 类库中文文档(转贴 )
大文件上传浅谈,以及遇到的问题
做软件的困难:非技术困惑
走进C# (我的C#学习之旅)之二
Northwind中一个特别之处
.net中取当前系统的想关信息的类
写组件时需要的注释与属性书写方法
XPath序列之五
使用CommandBuilder为DataAdaper生成的Command更新数据源时的注意事项!
如何列举出网络上所有的SQL Server服务器
XPath序列之一
如何在C#里面象js一样可以直接计算字符串的值
XPath序列之三
电子秤和PC之间的数据通讯(应答)
从SQL Server中读写大数据列。
通过CDO组件对NNTP服务器发送消息
Singleton深入浅出
悲观观定SQL Server和Oracle

ASP.NET 中的 asp.net求3位不同数字的组合数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 174 ::
收藏到网摘: n/a

用asp.net实现不同数字的组合数的两种方法与代码 简单的:
复制代码 代码如下:

public partial class _Default : System.Web.UI.Page
{
string m1 = "";
protected void Page_Load(object sender, EventArgs e)
{
string n = "123";
string m = "";
zuhe(n);
for (int j = 2; j > -1; j--)
{
m = m + n[j];
}
zuhe(m);
}
private void zuhe(string ssel)
{
for (int i = 0; i < ssel.Length; i++)
{
m1 = ssel + ssel.Substring(i, 1);
Response.Write(m1.Remove(i,1) + "<br>");
}
}
}

CSDN的(xiaoshen1127 ):WINFORM版
复制代码 代码如下:

using System;
using System.Collections.Generic;
namespace ZuHeShu
{
class Program
{
static void Main(string[] args)
{
Program p = new Program();
Console.WriteLine("******************************组合数***********************************");
Console.WriteLine("请任意输入一个整数:");
string num = Console.ReadLine();
try {
long.Parse(num);
List<string> als = new List<string>();
als = p.GetData(string.Empty, num.Trim(), als);
p.Display(als);
Console.WriteLine("\nY-Enter:继续");
if (Console.ReadLine().Trim().ToLower() == "y")
{
Console.Clear();
Main(args);
}
}
catch {
Console.Clear();
Console.WriteLine("请输入数字!");
Main(args);
}
}
private List<string> GetData(String strBase, String strSel, List<string> alRet)
{
if (strSel.Length == 1)
{
string temp=strBase + strSel;
if (!alRet.Contains(temp)&&!temp.StartsWith("0"))
{
alRet.Add(temp);
}
}
else
{
for (int i = 0; i < strSel.Length; i++)
{
GetData(strBase + strSel.Substring(i, 1), strSel.Remove(i, 1), alRet);
}
}
return alRet;
}
public void Display(List<string> dals)
{
int i = 1;
int a = dals.Count;
if (a == 0)
{
Console.WriteLine("该数没有其他组合情况");
}
else
{
Console.WriteLine("不同的组合数共有" + a + "个,如下");
foreach (string number in dals)
{
Console.Write(number + "\t");
if (i++ % 5 == 0)
{
Console.WriteLine();
}
}
}
}
}
}