日期:2014-05-20  浏览次数:20522 次

几道.net开发工程师面试题目
几道.net开发工程师面试题目
与大家分享一下
有不同的答案请留下

1.列出所有可用于两个页面之间传递参数的方法。
2.打开一个HTML页面,要自动提交页面的一个form,如何实现?请简单写出相关的页面代码(包括form的主要代码)
3.C#的类中,函数Public,Private,Protect,internal限定符各有什么区别?
4.你对.net的GC的理解,不能超过300字。
5.请写一个查询语句:从user表中取出name列中的起始字符是“北京”的全部记录
6.请你简单的说明数据库建立索引的优缺点
7.如果禁用了cookie,是否会影响到session的使用?原因?
8.C#中Finalize,Dispose有什么不同?
9.最大公约数
既能被两个整数整除的最大整数,例如,24与15两个数的最大公约数为3.求最大公约数可以用求余法来实现。即用两个整数中最大的整数除以最小的数求余数,然后使用除数除以余数求余,直到余数为0时,之前的除数也就是两个数的最大公约数。
10.求素数的程序
A.The algorithm is quite simple.Given an array of integers starting at 2.Cross out all multiples of 2.Find the next uncrossed integer,and cross out all of its multiples.Repeat until you have passed the square root of the maximum value.
A.请翻译上述文字。
B.编程 要求输入一个正整数(可以写死在程序中),返回小于这个数的所有素数。

------解决方案--------------------
两个页面之间传递参数的方法:
第一种方法:
通过URL链接地址传递
第二种方法:
通过post方式。
第三种方法: 
通过session
第四种方法:
通过Application
第五种方法:
通过Server.Transfer
第六种
使用QueryString
我们一般都用QueryString,Session和Server.Transfer这三种
------解决方案--------------------
3.C#的类中,函数Public,Private,Protect,internal限定符各有什么区别? 

public 关键字是类型和类型成员的访问修饰符。公共访问是允许的最高访问级别,对访问公共成员没有限制。protected 关键字是一个成员访问修饰符。受保护成员在它的类中可访问并且可由派生类访问。private 关键字是一个成员访问修饰符。私有访问是允许的最低访问级别。私有成员只有在声明它们的类和结构体中才是可访问的。internal 关键字是类型和类型成员的访问修饰符。只有在同一程序集的文件中,内部类型或成员才是可访问的。
------解决方案--------------------
页面传值方式有7:
1 session
2 server.Tranfer
3.application
4 cookie
5 url
6 数据库
7隐藏域

------解决方案--------------------
1.session,sever.transfer,get,post,cookie,application
3.Public,Private,Protect,internal
5.select * from user wherer name like'北京%'
6. 索引可以避免全表扫描。
聚集索引可以避免数据插入操作集中于表的最后一个数据页
索引还可用于避免排序操作
索引需要占物理空间
7.客户端禁用Cookie,Session也会失效。参考
8.
都是进行垃圾回收的接口,作用都是回收外部资源(即非托管资源)。GC只能回收托管内存,非托管内存需要自己实现回收。
Finalize为protected方法,外部不可见。Dispose则用于被外部或用户调用,很多时候Dispose方法等同于该类的Close方法,即具备Dispose方法的类都有对应的Close方法

------解决方案--------------------
最大公约数 
static int CommonDivisor(int x, int y)
{
if (x > y)
{
if (y == 0)
{
return x;
}

return CommonDivisor(y, x % y);
}
else if (x == y)
{
return x;
}
else
{
return CommonDivisor(x, y % x);
}
}
------解决方案--------------------
Up
------解决方案--------------------
9.最大公约数:
C# code

        static void Main(string[] args)
        {
            int[] nums = new int[4] { 756, 504, 630, 2226 };
            Console.Write(GetGongYue(nums));
            Console.Read();
        }

        public static int GetGongYue(int[] nums)
        {
            int first = 0;
            int temp = nums[1];
            for (int i = 0; i < nums.Length; i++)
            {
                first = nums[i];
                while (first % temp != 0)
                {
                    int temp2 = first;
                    first = temp;
                    temp = temp2 % temp;
                }
            }
            return temp;
        }

------解决方案--------------------
都答完了,帮顶一下
------解决方案--------------------