广

ASP.NET

  • IOS开发
  • android开发
  • PHP编程
  • JavaScript
  • ASP.NET
  • ASP编程
  • JSP编程
  • Java编程
  • 易语言
  • Ruby编程
  • Perl编程
  • AJAX
  • 正则表达式
  • C语言
  • 编程开发

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

    2018-05-07 10:24:34 次阅读 稿源:互联网
    广告
    简单的:
    代码如下:

    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();
                        }
                    }
                }
            }
        }
    }


    一起学吧部分文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与一起学吧进行文章共享合作。

    广告
    广告
    广告