黑马的一些练习题(.net)

练习题:

链接: https://pan.baidu.com/s/12V3vp72A5TZPxChs5nXwIw 提取码: 7n27 复制这段内容后打开百度网盘手机App,操作更方便哦

练习题答案(编程题源代码会提供下载):

链接: https://pan.baidu.com/s/1QqVo9suF3B3Zzp7eI6ZI-w 提取码: bqq6 复制这段内容后打开百度网盘手机App,操作更方便哦
注:以下的答案不是标准答案,可能是有错误的。

第 1部分: C# 基础加强试题

1.1选择题部分

MSIL保证我们在.NET开发中不同的语言类型之间互相兼容。
类的默认访问修饰符是internal,而类成员的访问修饰符是private

class test
{public string StuName
{get { return _stuName; }set { _stuName = value; }}}

定义了一个属性
String是引用类型
在 c# 中关于静态方法和实例描述 中关于静态方法和实例描述 错误的是:静态方法可以直接调用实例方法
下列关于泛型集合 下列关于泛型集合 List说法错误的是:List获取元素时需要类型转换
下列描述错误的是:一个类可以有多个基类和多个基接口
在XMLDOM中,装载一个XML文档的方法:load方法
下列关于构造函数的描述正确的是:构造函数必须与类名相同
以下关于overload(重载)和override(重写)说法错误的是:overload是指父子类之间的关系
以下关于ref和out的描述哪些项是错误的?(多选)
使用ref参数,传递到ref参数的参数必须最先初始化。
使用out参数,传递到out参数的参数必须最先初始化。
string s=“EFGHIJabcd”;
string ss = s.PadLeft( 11,‘Z’).Substring(0,1).ToUpper();
ss的内容会是”Z”
装箱、拆箱操作发生在: 引用类型与值类型之间
访问范围限定于此程序或那些由它所属的类派生的类型”是应使用哪项访问性修饰?protected

1.2编程题

1.3简答题:

谈谈你对装箱和拆箱的理解?
答:装箱:将值类型(如 int ,或自定义的值类型等)转换成 object 或者接口类型的一个过程。当 CLR 对值类型进行装箱时,会将该值包装为 System.Object 类型,再将包装后的对象存储在堆上。 拆箱就是从对象中提取对应的值类型的一个过程。
  装箱是隐式的;拆箱必定是显式的。
  与简单的赋值操作相比,装箱和拆箱都需要进行大量的数据计算。对值类型进行装箱时,CLR 必须重新分配一个新的对象。拆箱所需的强制转换也需要进行大量的计算,两者相比,仅仅是程度不高,并且也可能会出现类型转换发生的异常情形。如果你的操作正处于循环的中心,通过测试(如:Stopwatch),你会很明显的感觉到性能问题。
  .NET 2.0 引入的泛型其实在很大的程度上解决了装拆箱产生的类型转换问题,也减少了类型转换所引起的运行时的异常,及保证了类型安全,从而提高了性能。
谈你对foreach语句执行原理的理解?(本题如考试,只做加分题,不占考试总分)
答:foreach本身就是一个设计模式——迭代器模式

   abstract class Aggregate
   {
       public abstract Iterator CreateIterator();
   }

    class ConcreteAggregate:Aggregate
    {
        private IList<object>  items=new List<object>();

        public override Iterator CreateIterator()
        {
            return new ConcreteIterator(this);
        }

        public int Count
        {
            get { return this.items.Count; }
        }

        public object this[int index]
        {
            get { return this.items[index]; }
            set { this.items.Insert(index,value); }
        }
}

   abstract class Iterator
   {
       public abstract object First();

       public abstract object Next();

       public abstract bool IsDone();

       public abstract object CurrentItem();
   }

   class ConcreteIterator : Iterator
   {

       private ConcreteAggregate aggregate;
       private int current = 0;
       public ConcreteIterator(ConcreteAggregate aggregate)
       {
           this.aggregate = aggregate;
       }
       public override object First()
       {
           return this.aggregate[0];
       }

       public override object Next()
       {
           object ret = null;
           current++;
           if (current<this.aggregate.Count)
           {
               ret = this.aggregate[this.current];
           }
           return ret;
       }

       public override bool IsDone()
       {
           return this.current >= this.aggregate.Count;
       }

       public override object CurrentItem()
       {
           return this.aggregate[this.current];
       }
    }

谈谈你对接口做为方法参数和接口做为方法返回值的理解?(本题如考试,只做加分题,不占考试总分)
答:接口本来就是对类行为的抽象,所以无论是接口作为方法参数还是作为方法返回值,不过就是一个对具体行为的抽象。比如ifly{void fly();},就是对class1:ifly{private void fly(){}}和class2:ifly{private void fly(){}}两个方法的抽象

第2部分:ado.net

2.1选择题和填空题

写出下面聚合函数的功能:(2分5)
Max____最大值____ Min_____最小值____ Count_____总数_____
Avg____平均值_____ Sum____总和_____
写出下面函数的功能:(2分
5)
Len___字符串长度___ Lower___所有字符转为小写字母___
LTrim__字符串去掉左边多余空格____ GetDate___获取当前时间___
DataDiff___获取给定时间单位的时间差___
Ado.net中常用的5个组件名称:SqlConnection;SqlDataAdapter;SqlCommand;DataSet; SqlParameter
写出SqlCommand对象下面方法的作用或描述在什么情况下使用:
a) ExecuteScalar 获取一行一列的数据
b) ExecuteReader 通过指针获取数据
c) ExecuteNonQuery 对数据库进行增删改操作

2.2编程题

2.3简单SQL题

纵变横问题

select Name,
sum (case Course when '语文' then Grade else 0 end) as 语文,
sum (case Course when '数学' then Grade else 0 end) as 数学,
sum (case Course when '英语' then Grade else 0 end) as 英语
from score
group by Name;
select * from score  
pivot (sum(Grade)for Course in(语文,数学,英语))as  临时表;

写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的。

select ROW_NUMBER() OVER ( ORDER BY ID ) AS rownum ,*  into #temp
from Person; select  * from #temp where rownum between 31 and 40;

请写一个SQL语句:从user表中取出name列中的起始字符是“北京”的全部记录

Select * from [user] where name like ‘背景%’;

SQL Server数据库中的表结构:产品销售表(Sa_Order)中3个字段,分别是产品编号(barcode)、销售日期(order_date)、数量(quantity)。
1、在所有销售记录中,统计销售数量增长最快的前100种产品。(有任何问题可以咨询)
2、用一条SQL语句从Sa_Order表中删除barcode为A或B以外的所有产品。

Select top 100 * from 
(Select barcode,sum(quantity) as salequantity from sa_order group by barcode)
AS  subtotal order by salequantity desc;
Delete from sa_order where barcode not (‘A’,’B’);

数据库中1表示a 2表示b 写一句查询语句,1显示a,2显示b

Select
 case number 
when 1 then ‘a’
when 2 then ‘b’
 else  0  end as letter  from table;

数据库中有一列的数据是double或者int类型的数据,写一句查询一句将为空的值替换为一个默认值。

select (CASE when (TelPhone IS NULL OR TelPhone='') then '暂无' else TelPhone end) as TelPhone,(CASE when (Name is  or Name='') then '暂无' else Name end) as name,(CASE when (CreateDate IS NULL OR CreateDate='') then '暂无' else CreateDate end) as CreateDate,(CASE when ([Address] IS NULL OR [Address]='') then '暂无' else [Address] end) as [Address] from User_Detail 

第3部分:Html/css/js/jquery测试题

3.1选择题和填空题

在一个表单中,查找所有选中的input元素,可以用jquery中的__________KaTeX parse error: Expected group after '_' at position 64: …io’]:selected”)_̲______来实现。 在jqu…(selector).on(“mouseover”,function(){})
在jquery中,去空格的方法是______trim()_______。
只考虑子元素,不考虑后代元素的方法是
____________。
节点选择器不属于jquery选择器
在jquery中想要找到所有元素的同辈元素,下面哪一个是可以实现的siblings([expr])
如果想要找到一个表格的指定行数的元素,用下面哪个方法可以快速找到指定元素?eq()
下面哪一个不是jquery对象访问的方法?B:size()
如果想在一个指定的元素后添加内容,下面哪个是实现该功能的?insertAfter(content)
当一个文本框中的内容被选中时,想要执行指定的方法时,可以使用下面哪个事件来实现?select(fn)

3.2编程题

3.3 简答题

window.onload与$(document).ready();的区别
$(document).ready:是DOM结构绘制完毕后就执行,不必等到加载完毕。 意思就是DOM树加载完毕,就执行,不必等到页面中图片或其他外部文件都加载完毕。并且可以写多个.ready。
window.onload:是页面所有元素都加载完毕,包括图片等所有元素。只能执行一次。

第4部分:三层

4.1填空题:

通常意义上的三层架构就是将整个应用划分为哪三层?
答:用户接口层UI、业务逻辑层BLL、数据访问层DAL
哪一层通俗讲就是展现给用户的界面,即用户在使用一个系统的时候的所见所得?
答:UI
哪一层?针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。
答:BLL
哪一层该层所做的事务直接操作数据库,针对数据的增删改查等每层之间是一种垂直的关系?
答:DAL

4.2编程题

第 5部分: Asp.net

5.2编程题

猜你喜欢

转载自blog.csdn.net/peacezhi/article/details/88551096
今日推荐