数据库部分 ..................................................................................................................... 17
2、请写一个SQL语句:从user表中取出name列中的起始字符是“北京”的全部记录 .. 17 3、请你简单的说明数据库建立索引的优缺点 ........................................................................... 17 4、什么是sql注入?如何避免sql注入? .................................................................................. 18 5.在SQLServer中求当前时间与2012-01-01 0:0:0相差的秒数? ......................................... 18 6.写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的。........................................................................................................ 18 7、横表、纵表转换(常考!!!) ................................................................................................... 18 8、删除姓名、年龄重复的记录(只保留Id最大的一条)(常考!!!) ............................... 20 9、一个文本文件含有如下内容: ............................................................................................... 21 10、一个文本文件含有如下内容,分别表示姓名和成绩: ..................................................... 22 11、说一下SQLServer中索引的两种类型(常考!!!) ........................................................... 22 12、好人网.net培训精品就业班学员总结SQL题..................................................................... 23 13.题目、活期存款中,“储户”通过“存取款单”和“储蓄所”发生联系。.................................. 24 14.本题用到下面三个关系表: .................................................................................................... 25 15..................................................................................................................................................... 29 一定要复习如何通过CreateTable、Alter Table来创建、修改表结构! .................................. 40 16 假定在建BOOKS表时没有定义主码,写出为BOOKS表追加定义主码的语句 ............ 40
ASP.NET部分 ................................................................................................................ 42 综合部分 ......................................................................................................................... 47
明*的问题属于选择性掌握的内容,能掌握更好,没掌握也没关系。
下面的参考解答只是帮助大家理解,不用背,面试题、笔试题千变万化,不要梦想着把题覆盖了,下面的题是供大家查漏补缺用的,真正的把这些题搞懂了,才能“以不变应万变”。回答问题的时候能联系做过项目的例子是最好的,有的问题后面我已经补充联系到项目中的对应的案例了。
C#部分
1、不用中间变量交换两个变量(常考)
i = i + j;//i=30 j = i - j;//j=10; i = i - j;//i=20;
Console.WriteLine(\,i,j);
2、下面是一个由*号组成的4行倒三角形图案。要求:1、输入倒三角形的行数,行数的取值3-21之间,对于非法的行数,要求抛出提示“非法行数!”;2、在屏幕上打印这个指定了行数的倒三角形。
******* ***** *** *
3、现有1~100共一百个自然数,已随机放入一个有98个元素的数组a[98]。要求写出一个尽量简单的方案,找出没有被放入数组的那2个数,并在屏幕上打印这2个数。注意:程序不用实现自然数随机放入数组的过程
4、2+5+\得到的结果是什么?
解答:从左向右运算,int+string是string。所以是\\是\,而\是“87”
5、简述 private、 protected、 public、 internal 修饰符的访问权限。 private : 私有成员, 在类的内部才可以访问。
protected : 保护成员,该类内部和继承类中可以访问。 public : 公共成员,完全公开,没有访问限制。 internal: 当前程序集内可以访问。
6、public static const int A = 1;这段代码有错误么?
错误:const不能被修饰为static ;因为定义为常量 (const )后就是静态的(static )。
7、string str = null 与 string str =””说明其中的区别。
答:string str = null 是不给他分配内存空间,而string str = \\\给它分配长度为空字符串的内存空间。 string str = null没有string对象,string str = “”有一个字符串对象。
string s3 = string.Empty;//反编译发现,string.Empty就是在类构造函数中 Empty = \
8、int、DateTime、string是否可以为null?
null表示“不知道”,而不是“没有”。没有年龄和不知道年龄是不一样。 数据库中null不能用0表示。0岁和不知道多少岁不一样。
int、DateTime不能,因为其为结构体,而结构体属于值类型,值类型不能为null,只有引用类型才能被赋值null。string可以为null。
C#中int等值类型不可以为null、而数据库中的int可以为null,这就是纠结的地方。int?就变成了可空的int类型。bool?、DateTime?
int?翻译生成.Net的Nullable
9、string、String;int、Int32;Boolean、bool的区别 String、Int32、Boolean等都属于.Net中定义的类(CTS),而string、int、bool相当于C#中对这些类定义的别名。
10、值类型和引用类型的区别?
1.将一个值类型变量赋给另一个值类型变量时,将复制包含的值。引用类型变量的赋值只复制对对象的引用,而不复制对象本身。
2.值类型不可能派生出新的类型:所有的值类型均隐式派生自 System.ValueType。但与引用类型相同的是,结构也可以实现接口。
3.值类型不可能包含 null 值:然而,可空类型功能允许将 null 赋给值类型。
11、堆和栈的区别?
栈是编译期间就分配好的内存空间,因此你的代码中必须就栈的大小有明确的定义;局部值类型变量、值类型参数等都在栈内存中。 堆是程序运行期间动态分配的内存空间,你可以根据程序的运行情况确定要分配的堆内存的大小。
12.StringBuilder 和 String 的区别?
答:String 在进行运算时(如赋值、拼接等)会产生一个新的实例,而 StringBuilder 则不会。所以在大量字符串拼接或频繁对某一字符串进行操作时最好使用 StringBuilder,不要使用 String
13、不是说字符串是不可变的吗?string s=\不就是变了吗?(好人网.Net培训班原创模拟题)
String是不可变的在这段代码中,s原先指向一个String对象,内容是 \,然后我们将s指向\,那么s所指向的那个对象是否发生了改变呢?答案是没有。这时,s不指向原来那个对象了,而指向了另一个 String对象,内容为\,原来那个对象还存在于内存之中,只是s这个引用变量不再指向它了。
14、下面的程序执行结果是什么?(好人网.Net培训班原创模拟题)
class Person {
public int Age { get; set; } }
int i1 = 20; int i2 = i1; i1++;
Console.WriteLine(i2);
Person p1 = new Person(); p1.Age = 20; Person p2 = p1; p1.Age++;
Console.WriteLine(p2.Age);
答案: 20 21
解释:引用类型和值类型的区别。
15、下面程序的执行结果是什么?(好人网.Net培训班原创模拟题)
int i = 10;
Console.WriteLine(i++); Console.WriteLine(++i); Console.WriteLine(i=20); Console.WriteLine(i==20);
答案: 10 12 20

