首页 新闻 会员 周边

奇怪的面试题

0
悬赏园豆:10 [已解决问题] 解决于 2013-03-13 17:20

昨天去面试,碰到这样一问题:

请写一段程序,打印结果如下:

              1

          2  1

      3  2  1

 4   3  2  1 

 

不知道这个考点是什么, 该如何回答?

beautang的主页 beautang | 初学一级 | 园豆:197
提问于:2013-03-13 14:08
< >
分享
最佳答案
0

递归。。

        public static void Fun_A(int i)
        {
            #region 处理方法
                string temp = string.Empty;
                for (int j = i; j >= 1; j--)
                {
                    temp += j.ToString();
                }
                Console.WriteLine(temp);
            #endregion
            if (i == 1) { return; }//结束条件
            if (i > 1) { Fun_A(i - 1); }
        }

顺便也给我一点分吧!!

收获园豆:10
truename | 初学一级 |园豆:168 | 2013-03-13 16:02
其他回答(3)
0

考察算法,这问题感觉跟高中数学题一样,蛋疼!,我昨天也面试问些基础的东西还能接受。让打出个这个,估计知道公式推理可以打印出,不知道真得一会捣鼓

伏草惟存 | 园豆:1420 (小虾三级) | 2013-03-13 14:35
0

面试总要让你做些东西吧,不一定非要有考点,就是一道普通的题目,做出来就行了哇,有时候面试时也不用做什么题目呀

for (int i = 1; i <= 4; i++)
            {
                for (int j = i; j < 4; j++)
                {
                    Console.Write(" ");
                }
                for (int k = 0; k < i; k++)
                {
                    Console.Write(i - k);
                }
                Console.WriteLine();
            }

记得给豆我呀

*^__^* | 园豆:428 (菜鸟二级) | 2013-03-13 14:45

程序员不会写“摧毁巴格达”的程序,他们只会写“摧毁城市”这个程序,然后把“巴格达”作为参数传进去。

支持(0) 反对(0) 水牛刀刀 | 园豆:6350 (大侠五级) | 2013-03-13 15:35

@水牛刀刀: 木有听懂你说的啥,你是说要把参数传进去么,要实现什么目的,做什么事不行么

支持(0) 反对(0) *^__^* | 园豆:428 (菜鸟二级) | 2013-03-13 15:43

@*^__^*: 你觉得这个程序对么

Console.WriteLine("      1");
Console.WriteLine("    2 1");
Console.WriteLine("  3 2 1");
Console.WriteLine("4 3 2 1");
支持(0) 反对(0) 水牛刀刀 | 园豆:6350 (大侠五级) | 2013-03-13 16:03

@水牛刀刀: 我现在的水平只能写这样的东西 ,当然你要是愿意说,俺还是可以听听的,对不对先不谈,楼主的要求还是可以实现的,而且我觉得两个月后,两年后,我写出来的肯定不是这样的了

支持(0) 反对(0) *^__^* | 园豆:428 (菜鸟二级) | 2013-03-13 16:14
0
static void Main(string[] args)
{
     Print(4);
     Console.Read();
}

static void Print(int max)
{
     for (int i = 1; i <= max; i++)
     {
           Console.WriteLine(string.Join(" ",
                 from n in Enumerable.Range(1, max)
                 let m = max - n + 1
                 select m > i ? " " : m.ToString()));
     }
}
水牛刀刀 | 园豆:6350 (大侠五级) | 2013-03-13 15:34
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册