• .net面试题中那些小 程序


    一:

    一列数的规则如下: 1、1、2、3、5、8、13、21、34......  求第30位数是多少, 用递归算法实现。

    答:public class MainClass

        {

            public static void Main()  

            {

                Console.WriteLine(Foo(30));

            }

            public static int Foo(int i)

            {

                if (i <= 0)

                    return 0;

                else if(i > 0 && i <= 2)

                    return 1;

                else return Foo(i -1) + Foo(i - 2);

            }

        }

    二:

    请编程实现一个冒泡排序算法?

    答:

            int [] array = new int [*] ;

     int temp = 0 ;

     for (int i = 0 ; i < array.Length - 1 ; i++)

     {

      for (int j = i + 1 ; j < array.Length ; j++)

      {

       if (array[j] < array[i])

       {

        temp = array[i] ;

        array[i] = array[j] ;

        array[j] = temp ;

       }

      }

     }

    三:

    求以下表达式的值,写出您想到的一种或几种实现方法: 1-2+3-4+……+m

    答:

        int Num = this.TextBox1.Text.ToString() ;

     int Sum = 0 ;

     for (int i = 0 ; i < Num + 1 ; i++)

     {

      if((i%2) == 1)

      {

       Sum += i ;

      }

      else

      {

       Sum = Sum  - I ;

      }

     }

     System.Console.WriteLine(Sum.ToString());

     System.Console.ReadLine() ;

    四:

    在下面的例子里

         using System;

         class A

         {

              public A()

               {

                    PrintFields();

               }

              public virtual void PrintFields(){}

          }

          class B:A

          {

               int x=1;

               int y;

               public B()

        {

                   y=-1;

               }

               public override void PrintFields()

               {

                   Console.WriteLine("x={0},y={1}",x,y);

               }

    当使用new B()创建B的实例时,产生什么输出?

    答:X=1,Y=0;x= 1 y = -1

    六:

    根据委托(delegate)的知识,请完成以下用户控件中代码片段的填写:

    namespace test

    {

    public delegate void OnDBOperate();

    public class UserControlBase : System.Windows.Forms.UserControl

    {

     public event OnDBOperate   OnNew

    privatevoidtoolBar_ButtonClick(objectsender,System.Windows.Forms.ToolBarButtonClickEventArgs e)

    {

    if(e.Button.Equals(BtnNew))

    {

    //请在以下补齐代码用来调用OnDBOperate委托签名的OnNew事件。

    }

    }

    }

    答:if( OnNew != null )

        OnNew( this, e );

    七:

    给定以下XML文件,完成算法流程图。

    <FileSystem>

    < DriverC >

    <Dir DirName=”MSDOS 622”>

    <File FileName =” Command.com” ></File>

    </Dir>

    <File FileName =”MSDOS.SYS” ></File>

    <File FileName =” IO.SYS” ></File>

    </DriverC>

    </FileSystem>

    请画出遍历所有文件名(FileName)的流程图(请使用递归算法)

    答:

    void FindFile( Directory d )

    {

       FileOrFolders = d.GetFileOrFolders();

       foreach( FileOrFolder fof in FileOrFolders )

       {

         if( fof is File )

         You Found a file;

         else if ( fof is Directory )

         FindFile( fof );

        }

    }

  • 相关阅读:
    redis info命令中各个参数的含义
    mogndb 慢查询
    一分钟看懂Docker的网络模式和跨主机通信
    解决Nginx出现403 forbidden (13: Permission denied)报错的四种方法
    dva学习---effects异步中通过select获取当前的state
    golang json数组拼接
    golang mongodb查找find demo
    React从入门到精通系列之(14)refs和DOM元素
    选择——ERP信息系统选型
    企业库存资产的帐实管理思考
  • 原文地址:https://www.cnblogs.com/juexin/p/2815951.html
Copyright © 2020-2023  润新知