1、什么是面向对象?
答:面向对象OO 面向对象的分析OOA 面向对象的设计OOD 面向对象的编程OOP;
通俗的解释就是万物皆对象,把所有的事物都看作一个个可以独立的对象(单元),它们可以自己完成自己的功能,而不是像C那样分成一个个函数;现在纯正的OO语言主要是java和C#,C++也支持OO,C是面向过程的。
2、简述 private、 protected、 public、 internal 修饰符的访问权限。
答 :
private : 私有成员, 在类的内部才可以访问。
protected : 保护成员,该类内部和继承类中可以访问。
public : 公共成员,完全公开,没有访问限制。
internal: 在同一命名空间内可以访问。
3、列举ASP.NET 页面之间传递值的几种方式。
使用QueryString, 如....?id=1; response. Redirect()....
使用Session变量
使用Server.Transfer ( Server.Transfer 引导到另一页面保留服务器资源,通过更改服务器端“焦点”和传输请求来代替告诉浏览器重定向)
Context.Handler可以显示转换为上一个页面的实例
4、 一列数的规则如下: 1、1、2、3、5、8、13、21、34...... 求第30位数是多少, 用递归算法实现。
答:
代码 {
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);
}
}
5、C#中的委托是什么?事件是不是一种委托?
答 :委托可以把一个方法作为参数代入另一个方法。 委托可以理解为指向一个函数的引用。事件是一种特殊的委托 。
6、override与重载的区别。
答 :override 与重载的区别。重载是方法的名称相同。参数或参数类型不同,进行多次重载以适应不同的需要
Override 是进行基类中函数的重写。为了适应需要。
7、请编程遍历页面上所有TextBox控件并给它赋值为string.Empty。
答:
代码{
if (control is System.Windows.Forms.TextBox)
{
System.Windows.Forms.TextBox tb = (System.Windows.Forms.TextBox)control ;
tb.Text = String.Empty ;
}
}
8、请编程实现一个冒泡排序算法。
答:
代码
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)
{
temp = array ;
array = array[j] ;
array[j] = temp ;
}
}
}
9、描述一下C#中索引器的实现过程,是否只能根据数字进行索引?
答:<modifier> <return type> this [argument list]
...{
get
...{
// Get codes goes here
}
set
...{
// Set codes goes here
}
}
10、求以下表达式的值,写出您想到的一种或几种实现方法: 1-2+3-4+……+m。
答:
代码
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() ;

浙公网安备 33010602011771号