C#程序设计--输入一个整数,按数字反顺序输出

信息采集 一个整数  反转顺序(一般将数存进数组,然后反向输出)
下面为本人写的代码(如有错误,请指出,本人新手):
//Class1.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace CSharpTest
{
    class Class1
    {
        //test 1
        public void reverse(int i)
        {
            int minus = 0;
            if (i < 0)
            {
                i = Math.Abs(i);
                minus = 1;
            }
            if (i == 0)
            {
                Console.WriteLine("这样输入没有意义!");
                return;
            }
            //求位数 m 也可以将i转化成string类型 然后s.Length求得位数
            int m = 0;
            int ii = i;
            for (int a = 0; ii>0; a++)
            {
                ii /= 10;
                m++;
            }
            //定义位数的除数
            int n = (int)Math.Pow(10, (m-1));
            int[] ary = new int[m];
            //求得最高位的值
            int iii = i / n;
            ary[0] = iii;
            //依次求得2 3 4..位的值
            for (int b = n, c = 1; b > 1; b /= 10, c++)
            {
                if (b / 10 > 0)
                {
                    iii = (i % b) / (b / 10);
                    ary[c] = iii;
                }

            }
            //反转数组
            if (minus == 1)
            {
                Console.Write("-");
            }
            for (int a = m-1; a >=0 ; a--)
            {
                Console.Write(ary[a]);
            }
                
        }
    }
}
//Program.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace CSharpTest
{
    class Program
    {
        static void Main(string[] args)
        {
            Class1 c = new Class1();
            Console.WriteLine("请输入一个整数:");
            int i =Convert.ToInt32( Console.ReadLine());
            Console.WriteLine("输出的结果是:");
            c.reverse(i);
            Console.Read();
        }
    }
}
运行结果如下:
1、输入-1234 
输出-4321
2、输入+1234
输出4321
3、输入1234
输出4321

你可能感兴趣的:(C#-程序设计)