写出输出结果
Code
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);
Console.ReadKey();
}
}
2
5
1
6
遍历页面中所有的TextBox,交将值设置成"a"
Code
for (int j = 0; j < this.Controls.Count; j++)
{
foreach (object o in Page.Controls[j].Controls)
{
if (o is TextBox)
{
TextBox txt = (System.Web.UI.WebControls.TextBox)o;
txt.Text = "A";
}
}
}
常用排序算法
Code
/**//// <summary>
/// /冒泡排序
/// </summary>
private void BubbleSort()
{
//冒泡排序
int[] list = new int[5] { 111, 12, 223, 854, -5655 };//初始化数组
int i, j, temp;
for (j = 1; j < list.Length; j++)
{
for (i = 0; i < list.Length - j; i++)
{
if (list[i] > list[i + 1])
{
temp = list[i];
list[i] = list[i + 1];
list[i + 1] = temp;
}
}
}
}
/**//// <summary>
/// 选择排序
/// </summary>
private void SelectSort()
{
//选择排序
int[] a = new int[5] { 111, 12, 223, 854, -5655 };//初始化数组
int min, min_k;//定义最小数,和最小数的下标
for (int i = 0; i < 5; i++)
{
min = a[i];//将当前循环的数设置成最小数
min_k = i;
for (int j = i + 1; j < 5; j++)
{
if (a[j] < min)
{
min = a[j];
min_k = j;
int tem = a[min_k];
a[min_k] = a[i];
a[i] = tem;
}
}
}
}
求以下表达式的值,写出您想到的一种或几种实现方法: 1-2+3-4+……+m
Code
int sum=0;
bool flag=true;
for(int i=1;i<=m;i++)
{
if(flag)
sum+=i;
else
sum-=i;
flag=!flag;
}
return sum;
一列数的规则如下: 1、1、2、3、5、8、13、21、34...... 求第30位数是多少, 用递归算法实现
Code
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);
}
}
下面的输出是?
Code
Code
class Program
{
static void Main(string[] args)
{
B _b = new B();
Console.ReadKey();
}
}
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);
}
}
答:X=1,Y=0
写出输出结果
Code
public abstract class A
{
public 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();
Console.ReadKey();
}
}
A
B
A.Fun()
(第一:调用父类构造函数,第二:调用自身构造函数.)
写一个HTML页面,实现以下功能,左键点击页面时显示“您好”,右键点击时显示“禁止右键”。并在2分钟后自动关闭页面。
Code
<script ***script>
setTimeout('window.close();',3000);
function show()
{
if (window.event.button == 1)
{
alert("左");
}
else if (window.event.button == 2)
{
alert("右");
}
}
</script>
程序设计: 猫大叫一声,所有的老鼠都开始逃跑,主人被惊醒。(C#语言)
要求: 1.要有联动性,老鼠和主人的行为是被动的。
2.考虑可扩展性,猫的叫声可能引起其他联动效应。
Code
Code
public interface Observer
{
void Response(); //观察者的响应,如是老鼠见到猫的反映
}
public interface Subject
{
void AimAt(Observer obs); //针对哪些观察者,这里指猫的要扑捉的对象---老鼠
}
public class Mouse : Observer
{
private string name;
public Mouse(string name, Subject subj)
{
this.name = name;
subj.AimAt(this);
}
public void Response()
{
Console.WriteLine(name + " attempt to escape!";
}
}
public class Master : Observer
{
public Master(Subject subj)
{
subj.AimAt(this);
}
public void Response()
{
Console.WriteLine("Host waken!";
}
}
public class Cat : Subject
{
private ArrayList observers;
public Cat()
{
this.observers = new ArrayList();
}
public void AimAt(Observer obs)
{
this.observers.Add(obs);
}
public void Cry()
{
Console.WriteLine("Cat cryed!";
foreach (Observer obs in this.observers)
{
obs.Response();
}
}
}
class MainClass
{
static void Main(string[] args)
{
Cat cat = new Cat();
Mouse mouse1 = new Mouse("mouse1", cat);
Mouse mouse2 = new Mouse("mouse2", cat);
Master master = new Master(cat);
cat.Cry();
}
}
下面的程序运行后
Code
Code
class Program
{
static void Main(string[] args)
{
Class1 o1 = new Class1();
Class1 o2 = new Class1();
}
}
class Class1
{
private static int count = 0;
static Class1()
{
count++;
}
public Class1()
{
count++;
}
}
请问,o1.Count的值是多少?( C )
A.1 B.2 C.3 D.4
解答:class1在实例化的时候,先运行静态构造函数,然后运行实例构造函数,第二次实例化的时候,由于静态构造函数已经存在,所有直接实例化,它们都共享静态变量count.
C#实现:从1-100随机放入一个数组中(数组大小为100),不能重复.
Code
int[] ReturnArray()
{
int[] arr=new int[100];
for(int i=0;i<100;i++)
{
arr[i]=i+1; //先赋值
}
for(i=0;i<100;i++)
{
int j=Random(1,100);
if(i!=j)
{
int t=arr[j];
arr[j]=arr[i];
arr[i]=t;
}
}
}
用一句 sql语句:得到重复的ID。
表users,字段ID,Name。其中有重复的ID数据。
select ID from users group by ID Having count(ID)>1