高级程序员 笔试题
一、HTML、JavaScript、Web基础
1、向服务器发送请求有几种方式?
2、通过超链接怎样传递中文参数?
3、在position:relative的情况下,只用DIV+CSS写出“自适应”屏幕宽度的三栏布局。(只要写出CSS关键字即可)
4、在上一个题目的第2个DIV中,用JS在里面创建一个Table。二、.Net程序
1、值类型与引用类型有什么区别?
2、DataReader与DataSet有什么区别?简述DataSet和SqlDataReader的优缺点。
3、请编程遍历页面上所有TextBox控件并给它赋值为string.Empty。
4、C#中的委托是什么?事件是不是一种委托?什么是委托?
5、ADO.NET常用对象有哪些?
6、如何让一个类不允许被new出来。
7、请描述一下在.NET中Forms认证模式下,怎样用代码(用户名单存在数据库中,而不是WebConfig中)实现一个基于角色的授权?
8、您有没有制作过自定义的WebControl(注意不是用户控件)?如果有,请描述一下自定义控件制作基本过程,主要重载哪些方法?三、数据库
1、给定以下两个表:
部门ID 部门名称
1 部门1
2 部门2
3 部门3
4 部门4
人员ID 人员姓名 部门ID
1 姓名1 1
2 姓名2 1
3 姓名3 2
4 姓名4 3
5 姓名5 5用一条SQL语句显示所有人员的姓名及所在部门,没有部门的用“未标志”代替。
2、SQL Server中,向一个表中插入了新数据,如何快捷的得到自增量字段的当前值。
3、服务器1上一个数据库server1.data1,data1中有一个表table1;服务器2上有一个数据库server2.data2,data2中有一个表table2,如何实现两个表之间的inner join?
4、使用几种不同的方式选出表中51 - 60条记录。
5、假设用户表:UserId(自增列)、UserName(用户名),现在表中有一些用户名重复了,请使用一条SQL语句删除重复的用户名(重复的用户名只保留一条)。四、WebService XML
1、用哪些方法调用WebService?
2、XML的优点与认识。
3、介绍一下常用的Dom方法,写出查找ID属性为1的Xpath语句。五、软件工程
1、用.NET做B/S结构的系统,您是用几层结构来开发。每一层之间的关系以及为什么要这样分层?
2、类划分的依据,类粒度问题。六、代码实践
1、分析以下代码,完成填空
String strTmp = "abcdefg某某某";
int i = System.Text.Encoding.Default.GetBytes(strTmp).Length;
int j = strTmp.Length;
以上代码执行完成后,i =     j =    
2、写出过滤掉HTML标签的表达式。例如:<标签>文字</标签>只保留文字。
3、用C#实现以下功能:
A、产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复。
B、对上面生成的数组排序,需要支持升度、降序两种排序七、数据结构和算法
1、删除单向链表中第m个节点。
2、如何反转一个单向链表。
3、请简要讲述一下排序算法的种类与时间复杂度。
4、有n个数,大小分布在1到n-1,只有一个数重复,找出这个数。
5、有一个字符串数组List<string> = "abc","bac","acb"……10万个内容,每个长度在3-16个字字符。只保留其中一个组合,也就是说对于字符串内容相同,只是字条组合位置不同的字符串进行删除。如:"abc","bca","acb"是相同的,只保留一个"abc",给出思路或伪代码即可。八、附加题:
1、写出对设计模式的理解?请列举一些您用到过的设计模式以及在什么情况下使用设计模式?
2、根据委托(delegate)的知识,请完成以下用户控件中代码片段的填写
namespace test
{
  Public delegate void OnDBOperate();
  public class UserControlBase:System.Windows.Forms.UserControl
{
    public event OnDBOperate OnNew;
    private void toolBar_Click(objectsender,System.Windows.Forms.To  uttonClickEventArgs e)
      {
              if (e.Button . Equals(BtnNew))
                 {
              //请在以下补齐代码用来调用OnDBOperate委托签名的OnNew
                 }
           }
      }
}
3、仅知道表名的情况下,如何在不访问系统标的情况下知道一个表有没有自动增长列。
各位GGMM们发挥一下吧,呵呵!