.net复习之六

二、C# 部分*
13. 以下哪些可以作为接口成员?(多选) ( ABDE )
A. 方法B.属性C.字段D.事件E.索引器
F. 构造函数G.析构函数
14. 以下关于ref和out的描述哪些项是正确的?(多选) (    ACD      )
A. 使用ref参数,传递到ref参数的参数必须最先初始化。
B. 使用out参数,传递到out参数的参数必须最先初始化。
C. 使用ref参数,必须将参数作为ref参数显式传递到方法。
D. 使用out参数,必须将参数作为out参数显式传递到方法。
15.“ 访问范围限定于此程序或那些由它所属的类派生的类型”是对以下哪个成员可访问性含义的正确描述?(   B    )
A.public         B.protected             C.internal          D.protected internal
16.class Class1
{
     private static int count = 0;
     static Class1()
     {
         count++;
     }
     public Class1()
     {
         count++;
     }
}
Class1 o1 = new Class1();
Class1 o2 = new Class1();
请问,o1.Count的值是多少?(   C   )
A.1          B.2              C.3              D.4
17.abstract class BaseClass
{
     public virtual void MethodA()
     {
     }
     public virtual void MethodB()
     {
     }
}
class Class1: BaseClass
{
     public void MethodA(string arg)
     {
     }
     public override void MethodB()
     {
     }
}
class Class2: Class1
{
     new public void MethodB()
     {
     }
}
class MainClass
{
     public static void Main(string[] args)
     {
         Class2 o = new Class2();
         Console.WriteLine(o.MethodA());
     }
}
请问,o.MethodA调用的是: (   A   )
A.BaseClass.MethodAB.Class2.MethodA
C.Class1.MethodAD. 都不是
18. 请叙述属性与索引器的区别。
属性 索引器     
   通过名称标识。 通过签名标识。     
   通过简单名称或成员访问来访问。 通过元素访问来访问。     
   可以为静态成员或实例成员。 必须为实例成员。     
   属性的    get    访问器没有参数。 索引器的    get    访问器具有与索引器相同的形参表。     
   属性的    set    访问器包含隐式    value    参数。 除了    value    参数外,索引器的    set    访问器还具有与索引器相同的形参表。
19. 请叙述const与readonly的区别。
每一个class至多只可以定义一个static构造函数,并且不允许增加访问级别关键字,参数列必须为空。
         为了不违背编码规则,通常把static数据成员声明为private,然后通过statci property提供读写访问。
         const 关键字用于修改字段或局部变量的声明。它指定字段或局部变量的值不能被修改。常数声明引入给定类型的一个或多个常数。
         const数据成员的声明式必须包含初值,且初值必须是一个常量表达式。因为它是在编译时就需要完全评估。
         const成员可以使用另一个const成员来初始化,前提是两者之间没有循环依赖。
         readonly在运行期评估赋值,使我们得以在确保“只读访问”的前提下,把object的初始化动作推迟到运行期进行。
         readonly 关键字与 const 关键字不同: const 字段只能在该字段的声明中初始化。readonly 字段可以在声明或构造函数中初始化。因此,根据所使用的构造函数,readonly 字段可能具有不同的值。另外,const 字段是编译时常数,而 readonly 字段可用于运行时常数。
readonly 只能在声明时或者构造函数里面初始化,并且不能在 static 修饰的构造函数里面。
21. 您需要创建一个ASP.NET应用程序,公司考虑使用Windows身份认证。
所有的用户都存在于AllWin这个域中。您想要使用下列认证规则来配置这个应用程序:
a、 匿名用户不允许访问这个应用程序。
b、 所有雇员除了Tess和King都允许访问这个应用程序。
请问您应该使用以下哪一个代码段来配置这个应用程序?(   A   )
A.




B.




C.




D.



E.


22. 您要创建一个显示公司员工列表的应用程序。您使用一个DataGrid控件显示员工的列表。您打算修改这个控件以便在这个Grid的Footer显示员工合计数。请问您应该怎么做?(   C?   )
A.重写OnPreRender事件,当Grid的Footer行被创建时显示合计数。
B.重写OnItemCreated事件,当Grid的Footer行被创建时显示合计数。
C.重写OnItemDataBound事件,当Grid的Footer行被创建时显示合计数。
D. 重写OnLayout事件,当Grid的Footer行被创建时显示合计数。
23. 您 要创建ASP.NET应用程序用于运行AllWin公司内部的Web站点,这个应用程序包含了50个页面。您想要配置这个应用程序以便当发生一个HTTP 代码错误时它可以显示一个自定义的错误页面给用户。您想要花最小的代价完成这些目标,您应该怎么做?(多选)(   CD    )
A.在这个应用程序的Global.asax文件中创建一个Application_Error过程去处理ASP.NET代码错误。
B.在这个应用程序的Web.config文件中创建一个applicationError节去处理ASP.NET代码错误。
C.在这个应用程序的Global.asax文件中创建一个CustomErrors事件去处理HTTP错误。
D.在这个应用程序的Web.config文件中创建一个CustomErrors节去处理HTTP错误。
E.在这个应用程序的每一页中添加一个Page指示符去处理ASP.NET 代码错误。
F. 在这个应用程序的每一页中添加一个Page指示符去处理ASP.NET HTTP错误。
24. 您 的公司有一个DB Server,名为AllWin,其上装了MS SQLSERVER 2000。现在需要您写一个数据库连接字符串,用以连接AllWin上SQL SERVER中的一个名为PubBase实例的Test库。请问,应该选择下面哪一个字符串?(   B   )
A. “Server=AllWin;Data Source=PubBase;Initial Catalog=Test;Integrated Security=SSPI”
B. “Server= AllWin;Data Source=PubBase;Database=Test;Integrated Security= SSPI”
C. “Data Source= AllWin "PubBase;Initial Category=PubBase;Integrated Security= SSPI”
D. “Data Source= AllWin " PubBase;Database=Test;Integrated Security= SSPI”
25. 您 为AllWin公司创建了一个ASP.NET应用程序。这个应用程序调用一个 Xml Web Service。这个 Xml Web Service 将返回一个包含了公司雇员列表的DataSet对象。请问您该如何在这个程序中使用这个 Xml Web Service?(   ?   )
A.在“引用”对话框的.Net标签中选择 System.Web.Services.dll。
B.在“Web引用”对话框中输入这个 XML Web service 的地址。
C.在您的 Global.asax.cs 中添加一条 using 语句并指定这个 XML Web service 的地址。
D.在您的 Global.asax.cs 中写一个事件处理器导入这个 Xml Web Service 相应的 .wsdl 和 .disco 文件。
26. 您 要创建一个ASP.NET应用程序在DataGrid控件中显示一个经过排序的列表。产品数据被存放于一个名为PubBase的Microsoft SQL Server 数据库。每个产品的主键是ProductID,Numeric型并且每个产品有一个字母描述字段,名为ProductName。您使用一个 SqlDataAdapter对象和一个SqlCommand对象通过调用一个存储过程从数据库中获取产品数据。您将SqlCommand对象的 CommandType属性设置为CommandType.StoredProcedure,并将它的CommandText属性设置为 procProductList。您成功的获取了一个DataTable对象,其中是已经按ProductID降序排列的产品列表。您打算显示以相反的字 母顺序排列的ProductName,请问该怎么做? (   B   )
A. 将SqlCommand对象的CommandType属性修改为CommandType.Text,将CommandText属性修改为”SELECT * FROM procProductList ORDER BY ProductName DESC”。然后将这个DataTable对象绑定到DataGrid控件。
B. 创建一个基于这个DataTable对象的新的DataView并将这个DataView的Sort属性设置为“ProductName DESC”。然后将这个DataView对象绑定到DataGrid控件。
C. 将DataGrid控件的AllowSorting属性设置为True,并将DataGridColumn的SortExpression属性设置为 “ProductName DESC”.以显示ProductName。然后将这个DataTable对象绑定到DataGrid控件。

  D. 将DataTable对象的DisplayExpression属性设置为 “ORDER BY ProductName DESC”.。然后将这个DataTable对象绑定到DataGrid控件。

 

 

 

 

 

邏輯推理:
   -----------------------------------

   一人拿一張百元鈔票到商店買了25元的東西,

   店主由於手頭沒有零錢,便拿這張百元鈔票到隔壁的小攤販那裡換了100元零錢,
   並找了那人75元零錢。

   那人拿著25元的東西和75元零錢走了。

   過了一會兒,隔壁小攤販找到店主,說剛才店主拿來換零錢的百元鈔票是假鈔。

   店主仔細一看,果然是假鈔。

   店主只好又拿了一張真的百元鈔票給小攤販。


   問:在整個過程中,店主一共虧了多少錢財?

 -----------------------------------------------------------------------------------------

 

 

 

 

 

 先说说答案是200的思路
很简单
顾客是白赚的 25+75=100
老板赔的 货25+现金75+100赔给小贩=200
小贩不赔不赚
顾客给老板假钱,是一分不值的,但他却从老板这里拿走了东西和钱.如果老板不找小贩换钱的话,他赔100(货物的利润,进价等不计)
但他找了小贩换了钱.小贩是要他赔偿的
老板另外得掏100给小贩
所以老板得到废纸一张,给了顾客25东西,75现金
又赔给小贩100.总计200

但这是不正确的.原因就在于他那75是小贩的,而不是老板的.
算法
乱就乱在了小贩后来发现钱是假的,又回来找老板了
如果在开始换钱的时候,老板不是用的那张假钞,而是自己的真钱的话,问题就简单了.他给了小贩100真的,换回100另的.可以把小贩排除了.这 时,可以看做是老板自己的100元另钱.这里没小贩的事了,你可以看做是提前换好的.顾客来了,给了一张费纸(假钱当然是费纸).他拿走了25的货+75 的零钱,是100.我们可以看做他是抢的,老板赔了100元

再换一种思路.顾客赚了100,是事实在在的.他是拿着25块钱的东西和75块钱走了.但这钱不是老板的,是小贩的一开始这100是小贩给买的单(假钱在他那里)后来,他找到了老板,老板赔给他100.等于老板给顾客买的单.
如果老板把这假的100又花出去了呢?
那么他就不赔了!

所以,最终答案是100元(不计商品的利润,不算假钱老板又花出去了)

转载于:https://www.cnblogs.com/wangjingblogs/archive/2011/11/23/2259934.html

你可能感兴趣的:(数据库,c#)