C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx

上传人:b****2 文档编号:6023818 上传时间:2023-05-05 格式:DOCX 页数:63 大小:291.34KB
下载 相关 举报
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第1页
第1页 / 共63页
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第2页
第2页 / 共63页
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第3页
第3页 / 共63页
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第4页
第4页 / 共63页
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第5页
第5页 / 共63页
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第6页
第6页 / 共63页
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第7页
第7页 / 共63页
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第8页
第8页 / 共63页
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第9页
第9页 / 共63页
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第10页
第10页 / 共63页
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第11页
第11页 / 共63页
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第12页
第12页 / 共63页
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第13页
第13页 / 共63页
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第14页
第14页 / 共63页
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第15页
第15页 / 共63页
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第16页
第16页 / 共63页
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第17页
第17页 / 共63页
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第18页
第18页 / 共63页
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第19页
第19页 / 共63页
C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx_第20页
第20页 / 共63页
亲,该文档总共63页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx

《C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx》由会员分享,可在线阅读,更多相关《C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx(63页珍藏版)》请在冰点文库上搜索。

C#面试学习期未考试基础练习题带答案100题第4套文档格式.docx

C)设置HelpButton为true,MinimizeBox为false

D)设置HelpButton为true,MaximizeBox为false,MinimizeBox为false

5.假定一个10行20列的二维整型数组,下列哪个定义语句是正确的()。

A)int[]arr=newint[10,20]

B)int[]arr=intnew[10,20]

C)int[,]arr=newint[10,20]

D)int[,]arr=newint[20;

10]

newint[10,20],前面是行,后面是列。

6.在WinForm窗体中,放置了一个PictureBox控件PictureBox1,在设置PictureBox1控件的Image属性后,当图片与控件的大小不一致时,可以通过如下代码()使PictureBox1控件的大小与图片大小保持一致。

(选择一项)

A)this.PictureBox1.SizeMode=PictureBoxSizeMode.AutoSize;

B)this.PictureBox1.SizeMode=PictureBoxSizeMode.Normal;

C)this.PictureBox1.SizeMode=PictureBoxSizeMode.StretchImage;

D)this.PictureBox1.SizeMode=PictureBoxSizeMode.CenterImage;

A

7.枚举类型是一组命名的常量集合,所有整形都可以作为枚举类型的基本类型,如果类型省略,则定义为()。

A)uint

B)sbyte

C)ulong

D)int

8.设计窗口,可以通过()属性向列表框控件如ListBox的列表添加项。

A)Items

B)Items.Count

C)Text

D)SelectedIndex

9.值类型变量不包含下列()

A)整数类型

B)浮点类型

C)引用类型

D)浮点类型

C#的值类型包括:

结构体(数值类型,bool型,用户定义的结构体),枚举,可空类型。

C#的引用类型包括:

数组,用户定义的类、接口、委托,object,字符串。

数组的元素,不管是引用类型还是值类型,都存储在托管堆上。

引用类型在栈中存储一个引用,其实际的存储位置位于托管堆。

为了方便,本文简称引用类型部署在托管推上。

值类型总是分配在它声明的地方:

作为字段时,跟随其所属的变量(实例)存储;

作为局部变量时,存储在栈上。

值类型在内存管理方面具有更好的效率,并且不支持多态,适合用作存储数据的载体;

引用类型支持多态,适合用于定义应用程序的行为。

10.在.NET中,()类提供了操作字符串的方法。

A)System.Threading

B)System.IO

C)System.Collections

D)System.String

11.看代码回答问题

建表如下:

createtablestuInfo

stuIdintnotnull,

stuNamevarchar(30)notnull,

stuAddressvarchar(30),

看下面C#代码填空,要读取表中的第一列数据(已知sqlCmd为SqlCommand对象,sqlReader为SqlDataReader对象):

While(sqlReader.________)

{

Console.writeLine(sqlReader._________);

}选择()

A)Read()GetInt(0)

B)Next()GetValue(0)

C)Read()GetValue

(1)

D)Read()GetValue(0)

DataReader对象提供了顺序的,只读的方式读取Command对象获得的数据结果集。

正是因为DataReader是以顺序的方式连续地读取数据,所以DataReader会以独占的方式打开数据库连接。

由于DataReader只执行读操作,并且每次只在内存缓冲区里存储结果集的一条数据,所以使用Datareader对象的效率比较高,如果要查询大量数据,同事不需要随机访问和修改数据,DataReader是优先的选择。

DataReader对象有许多的属性和方法:

12.以下哪些功能不属于C#2.0新增的特性()

A)继承和多态

B)泛型

C)可空类型

D)遍历器

继承和多态是面向对象的基本特征,不是新特性。

13.C#中声明一个命名空间的关键字是()。

A)namespace

B)nameplace

C)this

D)as

namespace定义命名空间。

14.()关键字可以用来访问当前对象的基类对象。

A)object

B)this

C)as

D)base

使用base.调用父类里面的属性

publicclassparent

{

publicstringa;

}

publicclasschild:

parent

publicstringgetparent()

returnbase.a;

}

15.分析下列C#语句,注意类MyClass没有访问修饰符:

namespaceClassLibrary1{

classMyClass{

publicclasssubClass{

inti;

}}}

若必须为类MyClass添加访问修饰符,并使MyClass的可访问域保持不变,则应选择

________。

A)private

B)protected

C)internal

D)public

16.在C#中执行以下代码结果是()。

ArrayListlist=newArrayList();

list.Add

(1);

1

list.Add(“2”);

list.Add(“3”);

list.RemoveAt(0);

2

list.RemoveAt

(1);

list.RemoveAt

(2);

3

A)正确执行

B)代码行1运行出错

C)代码行2运行出错

D)代码行3运行出错

第3行出错。

因为前面已经移出两个,list.RemoveAt

(2);

超出范围。

17.若将数据集中所作更改更新回数据库,应调用SqlAdapter的()方法。

A)Update

B)Close

C)Fill

D)Open

SqlDataAdapter概述

SqlDataAdapter是DataSet和SQLServer之间的桥接器,用于检索和保存数据。

SqlDataAdapter通过对数据源使用适当的Transact-SQL语句映射Fill(它可更改DataSet中的数据以匹配数据源中的数据)和Update(它可更改数据源中的数据以匹配DataSet中的数据)来提供这一桥接。

当SqlDataAdapter填充DataSet时,它为返回的数据创建必需的表和列(如果这些表和列尚不存在)。

)我们可以通过以下三种方法来创建SqlDataAdapter对象:

使用方法

1、通过连接字符串和查询语句

[csharp]viewplaincopy

在CODE上查看代码片派生到我的代码片

stringstrConn="

uid=账号;

pwd=密码;

database=数据库;

server=服务器"

;

//SQLServer链接字符串

strSql="

SELECT*FROM表名"

SqlDataAdapterda=newSqlDataAdapter(strSql,strConn);

DataSetds=newDataSet();

//创建DataSet实例

da.Fill(ds,"

自定义虚拟表名"

);

//使用DataAdapter的Fill方法(填充),调用SELECT命令

这种方法有一个潜在的缺陷。

假设应用程序中需要多个SqlDataAdapter对象,用这种方式来创建的话,会导致创建每个SqlDataAdapter时,都同时创建一个新的SqlConnection对象,方法二可以解决这个问题

2、通过查询语句和SqlConnection对象来创建

SqlConnectionconn=newSqlConnection(strConn);

stringstrSql="

SqlDataAdapterda=newSqlDataAdapter(strSql,conn);

3、通过SqlCommand对象来创建

SqlConnectionconnSql=newSqlConnection(strConn);

//Sql链接类的实例化

connSql.Open();

//打开数据库

//使用SqlDataAdapter时没有必要从Connection.open()打开,

//SqlDataAdapter会自动打开关闭它。

stringstrSql="

//要执行的SQL语句

SqlCommandcmd=newSqlCommand(strSql,connsql);

SqlDataAdapterda=newSqlDataAdapter(cmd);

//创建DataAdapter数据适配器实例

ConnSql.Close();

//关闭数据库

 

SqlDataAdapterda=newSqlDataAdapter(strSQL,ConnSql);

//创建DataAdapter数据适配器实例DataSetds=newDataSet();

//创建DataSet实例da.Fill(ds,"

//使用DataAdapter的Fill方法(填充),调用SELECT命令ConnSql.Close();

//关闭数据库

注意

如果只需要执行SQL语句或SP,就没必要用到DataAdapter,直接用SqlCommand的Execute系列方法就可以了。

sqlDataadapter的作用是实现Dataset和DB之间的桥梁:

比如将对DataSet的修改更新到数据库。

SqlDataAdapter的UpdateCommand的执行机制是:

当调用SqlDataAdapter.Update()时,检查DataSet中的所有行,然后对每一个修改过的Row执行SqlDataAdapter.UpdateCommand,也就是说如果未修改DataSet中的数据,SqlDataAdapter.UpdateCommand不会执行。

使用要点

1、SqlDataAdapter内部通过SqlDataReader获取数据,而默认情况下SqlDataReader不能获知其查询语句对应的数据库表名,

所以下面的代码:

stringstrConn="

SqlDataAdapterda=newSqlDataAdapter(strSql,strConn);

DataSetds=newDataSet();

da.Fill(ds);

会在DataSet中创建一个新的DataTable,这个新的DataTable会拥有名为CustomerID和CompanyName列,但是DataTable对象的名称是Table,而不是我们希望的Customers。

这个问题,可以通过添加TableMapping来解决:

SqlDataAdapterda=newSqlDataAdapter(strSQL,strConn);

da.TableMappings.Add("

Table"

,"

Customers"

//设置对象名称

其实最简洁的方法是通过使用Fill方法的重载,通过指定DataTable,像这样:

SqlDataAdapter.Fill(DataSet,"

MyTableName"

这样就可以不必使用TableMappings集合。

2、在使用Fill方式时,可以指定DataTable,而不是DataSet:

SqlDataAdapterda=newSqlDataAdapter(strSql,strConn);

DataTabletbl=newDataTable();

da.Fill(tbl);

3、注意打开和关闭连接的处理

在调用SqlCommand对象执行sql命令之前,需要保证与该对象关联的SqlConnection对象时打开的,否则SqlCommand的方法执行时将引发一个异常,但是我们在上面的代码中看到,SqlDataAdapter没有这样的要求。

如果调用SqlDataAdapter的Fill方法,并且其SelectCommand属性的SqlConnection是关闭状态,则SqlDataAdapter会自动打开它,然后提交查询,获取结果,最后关闭连接。

如果在调用Fill方法前,SqlConnection是打开的,则查询执行完毕后,SqlConnection还将是打开的,也就是说SqlDataAdapter会保证SqlConnection的状态恢复到原来的情形。

这有时会导致性能问题,需要注意,例如下面的代码:

SqlConnectionconn=newSqlConnection(strConn);

SqlDataAdapterdaCustomers,daOrders;

SELECT*FROMCustomers"

daCustomers=newSqlDataAdapter(strSql,conn);

SELECT*FROMOrders"

daOrders=newSqlDataAdapter(strSql,conn);

daCustomers.Fill(ds,"

daOrders.Fill(ds,"

Orders"

以上代码会导致连接被打开和关闭两次,在调用Fill方法时各一次。

为了避免打开和关闭SqlConnection对象,在调用SqlDataAdapter对象的Fill方法之前,我们可以先打开SqlConnection对象,如果希望之后关闭连接,我们可以再调用Close方法,就像这样:

cn.Open();

cn.Close();

4、多次调用Fill方法需要注意数据重复和有效更新数据的问题

strSql="

SqlDataAdapterda=newSqlDataAdapter(strSql,strConn);

DataSetds=newDataSet();

da.Fill(ds,"

//…….

18.关于base关键字,下列使用方法错误的是()。

A)在子类中,base可以调用父类的构造函数

B)在子类中,base关键字可以访问父类的公共属性

C)在子类中,base关键字不可以调用父类的protected成员

D)在子类中,base关键字不可以调用父类的private成员

protected子类可以调用。

19.以下数据类型不能表示负数范围的是()

A)sbyte

B)decimal

C)double

D)uint

20.以下数据类型中不可以使用算术运算的是()

A)bool

B)char

C)decimal

D)sbyte

bool只有逻辑计算,不能算述运算。

21.假定一个10行20列的二维整型数组,下列哪个定义语句是正确的()。

C)int[,]arr=newint[10,20]

int[,]arr=newint[10,20]定义二维数组

22.关于C#中的switchcase语句,以下说法正确的是()

A)switch判断的表达式可以是整型或者字符型,但不能是字符串型

B)在该语句中最多不能超过5个case子句

C)在该语句中只能有一个default子句

D)在该句中只能有一个break语句

switch可以有多个break.但是default只能一个。

23.若将数据库中的数据填充到数据集,应调用SqlDataAdapter的()方法。

A)Open

D)Update

假设应用程序中需要多个SqlDataAdapter对象,用这种方式来创建的话,会导致创建每个SqlDataAdapt

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 哲学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2