当前位置:编程学习 > C#/ASP.NET >>

如何实现五位数 每一位有0-9十个数可以组成十万组数的程序?

如何用C#实现 有五位数每一位只限0-9十个数  可以组成十万组数 然后把每一组数带上编号输出如下

 (1) 0 0 0 0 0  (2) 0 0 0 0 1  (3) 0 0 0 0 2  (4) 0 0 0 0 3  (5) 0 0 0 1 0  
 (6) 0 0 0 1 1  (7) 0 0 0 1 2  (8) 0 0 0 1 3  (9) 0 0 0 3 0  (10)0 0 0 3 1   .....

在判断每一组数里的每一位数是奇数还是偶数(例如 0 0 0 0 0 /偶偶偶偶偶) 在判断如果等于这种状态为(偶偶偶偶偶)的时候册除这种状态里面的每一组数 如下第一和第三组是要册除的以此类推                              
(1) 0 0 0 0 0  (3) 0 0 0 0 2  
                                           

--------------------编程问答--------------------
            List<string> arr = new List<string>();
            Regex r = new Regex(@"\b", RegexOptions.Compiled);
            Regex r1 = new Regex(@"[13579]",RegexOptions.Compiled);
            for (int i = 0; i < 100000; i++)
            {
                arr.Add(string.Format("({0}){1}",i, r.Replace(i.ToString().PadLeft(5, '0'), " ")));
                Console.WriteLine(arr[i]);
            }
            var temp = (from str in arr
                        where !r1.IsMatch(str)
                        select str).ToArray();
            foreach(var t in temp)
                Console.WriteLine(t);
--------------------编程问答-------------------- 0~10w
就是你要的数了?
int[] res = Enumerable.Range(0, 100000).ToArray();
这就是你要的数组? --------------------编程问答--------------------
引用 2 楼 wuyazhe 的回复:
0~10w
就是你要的数了?
int[] res = Enumerable.Range(0, 100000).ToArray();
这就是你要的数组?
.net 3.0以后我就没用过c#了
看来linq大行其事了啊 --------------------编程问答-------------------- 没注意还要过滤一下。

Regex reg = new Regex("[13579]", RegexOptions.Compiled);
int[] res = Enumerable.Range(0, 100000).Where(i => reg.IsMatch(i.ToString("000000"))).ToArray();
--------------------编程问答--------------------
引用 3 楼 cj205 的回复:
引用 2 楼 wuyazhe 的回复:

0~10w
就是你要的数了?
int[] res = Enumerable.Range(0, 100000).ToArray();
这就是你要的数组?
.net 3.0以后我就没用过c#了
看来linq大行其事了啊


Linq简化写法。好使。 --------------------编程问答--------------------
引用楼主 xionger 的回复:
如何用C#实现 有五位数每一位只限0-9十个数 可以组成十万组数 然后把每一组数带上编号输出如下

 (1) 0 0 0 0 0 (2) 0 0 0 0 1 (3) 0 0 0 0 2 (4) 0 0 0 0 3 (5) 0 0 0 1 0  
 (6) 0 0 0 1 1 (7) 0 0 0 1 2 (8) 0 0 0 1 3 (9) 0 0 0 3 0 (10)0 0 0 3 1 ...……


你能把程序完整点吗? 还没看懂你怎么写的呀! --------------------编程问答-------------------- 我靠 奇偶看反了还

睡觉去了

看来linq值得看看~ --------------------编程问答--------------------
引用 1 楼 cj205 的回复:
C# code
            List<string> arr = new List<string>();
            Regex r = new Regex(@"\b", RegexOptions.Compiled);
            Regex r1 = new Regex(@"[13579]",RegexOptions.Compiled);
      ……


本来是要用到三个for循环为什么只有一个呢? 在下不才请多多指教 --------------------编程问答--------------------
引用 2 楼 wuyazhe 的回复:
0~10w
就是你要的数了?
int[] res = Enumerable.Range(0, 100000).ToArray();
这就是你要的数组?


当然了 这样不只有这十万组数吗? 过滤后正是我要的
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,