1、DOTNET面试题初级中级参考答案net资料仅供参考中软强网DOTNET程序员面试题(初级中级)参考答案姓名:年龄: 籍贯: 应聘岗位:期望薪金: 最低薪金: 期望培训方向:联系方式:住址:1.填空: 评分标准:一空1分,满分10分。(1)面向对象的语言具有_性、_性、_性。继承性、封装性、多态性。(考基本概念)(2)能用foreach遍历访问的对象需要实现 _接口或声明_方法的类型。IEnumerable 、 GetEnumerator (对foreach机制的理解,原来不想出这题的,凑分)(3)列举ADO.net中的五个主要对象_、_、_、_、_。. (送分题, 对ADO.net的了解)2
2、. 不定项选择: 评分标准: 一题5分,不选或者错选均不得分。漏选得2分。满分10分。(1) 以下叙述正确的是: A. 接口中能够有虚方法。 B. 一个类能够实现多个接口。 C. 接口不能被实例化。 D. 接口中能够包含已实现的方法。B、C (考对接口的理解) (2) 从数据库读取记录,你可能用到的方法有: A. ExecuteNonQuery B. ExecuteScalar C. Fill D. ExecuteReader B、C、D (考查对ADO.net的熟练程度)3. 简述 private、 protected、 public、 internal 修饰符的访问权限。private :
3、 私有成员, 在类的内部才能够访问。 protected : 保护成员,该类内部和继承类中能够访问。 public : 公共成员,完全公开,没有访问限制。 internal: 在同一命名空间内能够访问。评分标准:答对1题2分,2题5分,3题7分。全对10分。 (送分题)4. 写出一条Sql语句:取出表A中第31到第40记录(SQLServer, 以自动增长的ID作为主键, 注意:ID可能不是连续的。)解1: select top 10 * from A where id not in (select top 30 id from A) 解2: select top 10 * from A wh
4、ere id (select max(id) from (select top 30 id from A )as A) 评分标准:写对即10分。(答案不唯一,datagrid 分页可能需要用到)5 .列举ASP.NET 页面之间传递值的几种方式。1.使用QueryString, 如.?id=1; response. Redirect(). 2.使用Session变量 3.使用Server.Transfer .等等 评分标准:答对1点得3分,两点7分, 3点10分。6. 写出程序的输出结果class Class1 private string str = Class1.str; private
5、int i = 0; static void StringConvert(string str) str = string being converted.; static void StringConvert(Class1 c) c.str = string being converted.; static void Add(int i) i+; static void AddWithRef(ref int i) i+; static void Main() int i1 = 10; int i2 = 20; string str = str; Class1 c = new Class1()
6、; Add(i1); AddWithRef(ref i2); Add(c.i); StringConvert(str); StringConvert(c); Console.WriteLine(i1); Console.WriteLine(i2); Console.WriteLine(c.i); Console.WriteLine(str); Console.WriteLine(c.str); (考查值引用和对象引用)10210strstring being converted.评分标准:答对一点得2分,满分10分。7.写出程序的输出结果public abstract class A publ
7、ic A() Console.WriteLine(A); public virtual void Fun() Console.WriteLine(A.Fun(); public class B: A public B() Console.WriteLine(B); public new void Fun() Console.WriteLine(B.Fun(); public static void Main() A a = new B(); a.Fun(); A BA.Fun()评分标准:写出A.B 得5分,写出A.Fun()得5分,满分10分。(考查在继承类中构造函数, 以及new 方法,
8、)8. 写出程序的输出结果:public class A public virtual void Fun1(int i) Console.WriteLine(i); public void Fun2(A a) a.Fun1(1); Fun1(5); public class B : A public override void Fun1(int i) base.Fun1 (i + 1); public static void Main() B b = new B(); A a = new A(); a.Fun2(b); b.Fun2(a); -2 5 1 6评分标准:答对一点得2分,两点得5分
9、,3点得7分。全对得10分。9. 一列数的规则如下: 1、1、2、3、5、8、13、21、34. 求第30位数是多少,用递归算法实现。(C#语言) public class MainClass public static void Main() Console.WriteLine(Foo(30); public static int Foo(int i) if (i 0 & i 0 & i = 2) return 1; 得5分。 方法参数过多需要扣分(扣除分数 = 参数个数 1) 不用递归算法扣5分 (递归算法在树结构建立等方面比较常见)10、完成foo()函数的内容,要求能够弹出对话框提示当前选中的是第几个单选框。 function foo() / 在此处添加代码 return false; function foo() / 在此处添加代码 var objs=document.getElementsByTagName(input) for(var i=0;iobjs.length;i+) if(objsi.checked) alert(第+(parseInt(i)+1)+个被选中) return false;