.Net学习笔记----2015-07-08(基础复习和练习02)

打印乘法口诀表

走马观花的看了一个多月视频,是不行啊,练习太少,为了打印出三角形口诀表,又特么纠结半个多小时,最后还是百度才知道,好弱。。。。

        static void Main(string[] args)
        {
            ChengFaTable();
            Console.ReadKey();
        }
        /// <summary>
        /// 输出乘法口诀表
        /// </summary>
        static void ChengFaTable()
        {
            //i*j = n
            int i, j;
            for (i = 1; i <= 9; i++)
            {
                for (j = 1; j <= i; j++)
                {
                    Console.Write("{0}*{1}={2}\t", i, j, i * j);
                }
                Console.WriteLine();
            }
        }

定义长度50的数组,随机给数组赋值,并可以让用户输入一个数字n,按一行n个数输出数组  int[]  array = new int[50];     Random r = new Random();  r.Next();

换行方法纠结了一会:

思路:下标等于用户输入的数字时,说明数组中是第n+1个元素,这里换行正好是1行n个元素

昨天纠结的try{}catch{}方法果然有用,纠结过,解决了,印象较为深刻

 

        static void Main(string[] args)
        {
            int[] arr = new int[50];
            //int[] arr = new int[5];
            //for (int i = 0; i < arr.Length; i++)
            //{
            //    Console.WriteLine(arr[i]);
            //}
            while(true)//只要输入错误就重新让用户输入,直到正确为止
            {
                try
                {
                    Console.WriteLine("你打算以一行几个数字的方式打印这个数组?");
                    int userNum = Convert.ToInt32(Console.ReadLine());
                    //赋值
                    int[] newArr = Fill(arr);
                    //换行输出
                    NewLine(userNum, newArr);
                    break;
                }
                catch
                {
                    Console.WriteLine("输入有误,请重新输入");
                }
            }

            Console.ReadKey();

        }
        /// <summary>
        /// 给数组中的每一个元素赋值
        /// </summary>
        /// <param name="n"></param>
        /// <param name="arr">要被赋值的数组</param>
        /// 返回一个整数类型的数组
        static int[] Fill(int[] arr)
        {
            Random r = new Random();
            for (int i = 0; i < arr.Length; i++)
            {                
                int n = r.Next(0, 100);
                arr[i] = n;
            }
            return arr;
        }
        /// <summary>
        /// 接收数字n,让数组第n个元素换行
        /// </summary>
        /// <param name="n">n用户输入的数字</param>
        static void NewLine(int n, int[] arr)
        {
            for (int i = 0; i < arr.Length; i++)
            {
                //用户输入一个数字n,按一行n个数输出数组
                //如果用户输入5,那么应该在下标(i)为4之后换行
                if (i == n || i % n == 0)
                {
                    Console.WriteLine();
                }
                Console.Write(arr[i] + "\t");
            }
        }

 

你可能感兴趣的:(.net)