.Net面试题汇总(三) 帮你轻松过笔试关 --不断增加中

 

101、请翻译下面的文章(*
The BaseDataBoundControl is the root of all data-bound control classes. It defines the DataSource and DataSourceID properties and validates their assigned content. DataSource accepts enumerable objects obtained and assigned the ASP.NET 1.x way.

 

Mycontrol1.DataSource = dataSet;

 

Mycontrol1.DataBind();

 

DataSourceID is a string and refers to the ID of a bound data source component. Once a control is bound to a data source, any further interaction between the two (in both reading and writing) is handled out of your control and hidden from view. This is both good and bad news at the same time. It is good (rather, great) news because you can eliminate a large quantity of code. The ASP.NET framework guarantees that correct code executes and is written according to recognized best practices. You're more productive because you author pages faster with the inherent certainty of having no subtle bugs in the middle. If you don't like this situationlook, the same situation that many ASP.NET 1.x developers complained aboutyou can stick to the old-style programming that passes through the DataSource property and DataBind method. Also in this case, the base class saves you from common practices even though the saving on the code is less remarkable.

 

参考翻译(自我感觉翻译的很烂,仅供参考。):

BaseDataBoundControl是所有的数据绑定控件类的根类。它定义了DataSourceDataSourceID两个属性,并且对为它们赋值的内容进行验证。DataSource属性接受读取、设置ASP.Net 1.x方式的IEnumerable 对象。

Mycontrol1.DataSource = dataSet;

Mycontrol1.DataBind();

DataSourceID 是一个字符串,引用绑定的数据源控件的ID。一旦一个控件绑定到了数据源,这两者之间的任何交互(读和写)都会在你的控件之外被处理,并且被隐藏起来。这既是好消息也是坏消息。ASP.Net框架保证代码按照最佳实践进行代码的执行、编写。你会更加高效,因为你编写了更快的、没有任何错误的分页代码。如果你不喜欢这样的行为(看,就和ASP.Net 1.x开发人员抱怨的一样),你仍然可以使用老的编程风格,也就是将对象传递给DataSource属性,然后调用DataBind方法。另外在这种情况下,基类可以帮你避免常规的做法,即使看起来改进不明显。

 

102、在下述选项时,没有构成死循环的程序是 (C)

A.int i=100;while (1) { i=i%100+1; if (i>100) break; }

B.for (;;);

C.int k=1000; do { ++k; }while(k>=10000);

D.int s=36; while (s);--s;

 

103、下列哪个是和数据库访问技术关系不大的技术(C

ASQLHelper

BEnterPrise Library

CAppDomain

DLinq

 

104、下列哪些说法是错误的(传智播客.Net培训班原创模拟题)

A、将bmp格式的文件修改为jpg是修改图片格式最简单的方法

B、将QQ动态表情显示在网页上用gif格式比较好

C、将bmp格式的图片放到网页中可以优化网站速度

Dpng格式用在网页中可以实现透明的效果。

 

答案:ACA错误是因为修改文件的后缀并没有真的修改文件的格式,要使用Photoshopmspaint等图片处理工具进行转换才可以。C错误是因为在网页中不能使用bmp图片。

 

105、从以下简写中任选一个简单描述

OA/MIS/HRM/CRM/KM

 

参考答案:

OA(Office Automation):办公自动化

MIS(Managment Information system):管理信息系统

HRM(Human Resource Managment):人力资源管理,包括员工管理、薪资管理、入职管理、离职管理、报销管理、请假管理等

CRM(Customer Relation Managment):客户关系管理系统,包括客户管理、客户关怀、客户回访、投诉管理、咨询管理、报修管理等

KM(Knowledge Managment):知识管理

 

106、请在数据库中设计表来保存一个树状结构的公司组织结构

参考呼叫中心项目的代码和板书。

 

107、下面程序的执行结果是什么?

    public struct Point

    {

        public int x;

        public int y;

        public Point(int x, int y)

        {

            this.x = x;

            this.y = y;

        }

    }

            Point p1 = new Point(100, 100);

            Point p2 = p1;

            p1.x = 200;

            Console.WriteLine("{0},{1}", p1.x, p2.x);

答案:

200,100

 

解答:结构体是复制传递的。

 

108、在Windows命令行中敲入下面的指令各有什么反应(传智播客.Net培训班原创模拟题)

cd ..

 

notepad

cmd

ipconfig

dir

 

答案:

cd ..:进入上一级目录

notepad:打开记事本

cmd:启动另外一个命令行

ipconfig:打印网络设置信息

dir:显示当前目录下的文件

 

109、下列这些软件用过哪些?他们是用来做什么的?(传智播客.Net培训班原创模拟题)

TypeAndRunFoxMailReflectorUltraEditVSSVirtualPCVMWare

参考答案:

TypeAndRun:快速通过敲命令的方式启动其他程序的工具。

FoxMail:邮件收发客户端

Reflector.net程序反编译工具

UltraEdit:高级文本编辑器

VSS:源代码管理工具

VirtualPC:在一台计算机中虚拟出另外一个计算机的软件,是微软的产品

VMWare:和VirtualPC一样,也是一种虚拟机软件

 

110、开放式问题:如果程序连不上SQLServer数据库服务器服务器,你会怎么排除这个故障?(传智播客.Net培训班原创模拟题)

参考解答:首先ping一下服务器IP,看是否能够ping通,如果不能ping通,则看是否网络有问题;如果能ping通,再telnet一下服务器的1433端口,看是否能够连通;如果不能连通则可能是SQLServer服务停掉了或者是服务器上的防火墙封掉了1433端口;如果能连通再检查是不是本地程序的问题、驱动的问题。

 

111、下面的IP地址有什么含义?(传智播客.Net培训班原创模拟题)

127.0.0.1:本地回环地址(LoopBack),localhost

0.0.0 .0:监听所有的网卡。AnyIP

255.255.255.0

 

112、不用JQuery等框架实现AJAX无刷新登录。

提示:用纯XMLHttpRequest实现。

113、单点登录。

114Http状态码各是什么意思。

301 :重定向
404
:页面不错在

500:服务器内部错误

115、 对html文本框进行赋值的JQuery语句,对html文本框进行取值的JQuery语句,对TextBox服务端控件进行取值的语句JQuery

116IEFireFox的不同,IE6IE8的不同。JQuery

XMLHttpRequest。不同浏览器实现AJAX的代码是不一样的。InnerHTML

CSSJavascriptdom

我们项目开发中为了避免这些跨浏览器兼容的问题,就是用JQuery框架,他帮我们屏蔽了浏览器的差异。

 

说说在软件设计中你遇到的以空间换时间的例子?Cache、索引、简繁转换用Dictionary

 

asp.net错误机制。ErrorPage,Page_ErrorApplication_Error

 

面试题:

1、自己写AJAX。写XMLHttpRequest实现AJAX例子。

2、不用中间变量交换两个变量

            int i = 500;

            int j = int.MaxValue - 10;

            //int i = 10;

            //int j = 20;

 

            Console.WriteLine("i={0},j={1}", i, j);

 

            i = i + j;//i=30

            j = i - j;//j=10;

            i = i - j;//i=20;

 

            Console.WriteLine("i={0},j={1}",i,j);

另外一个解决方案:位运算。

 

3、横表转纵表

 

  女 未知

2   2   1

 

 

SELECT     1 AS Expr1, 2 AS Expr2, 3 AS Expr3

UNION ALL

SELECT     4 AS Expr1, 5 AS Expr2, 6 AS Expr3

 

 

UNION将结果集拼到一起

UNION ALL将结果集拼到一起,并且自动去除重复行

 

横表变纵表:增加合计行

 

姓名      成绩

tom       50

jerry      60

........

平均        ....

 

 

select Name as 姓名 ,Credit as 成绩

from Persons

Union all

select '平均' as 姓名,AVG(Credit)

from Persons

 

 

增加一个总分“列”

SELECT     Name, Credit, Credit2, Credit + Credit2 AS Expr1

FROM         Persons

 

SELECT     Name, Credit, Credit2, Credit + Credit2 AS Expr1

FROM         Persons

UNION ALL

SELECT     '总分' AS Expr1, SUM(Credit) AS Expr2, SUM(Credit2) AS Expr3, SUM(Credit + Credit2) AS Expr4

FROM         Persons AS Persons_1

 

4、删除姓名、年龄重复的记录

去除重复的数据:

SELECT DISTINCT Name

FROM         Persons

 

Distinct只能去除结果集中一模一样的数据

 

SELECT     Name, Gender

FROM         Persons

GROUP BY Name, Gender

 

 

SELECT     MAX(Id) AS Expr1, Name, Gender

FROM         Persons

GROUP BY Name, Gender

 

 

//取得不重复的数据

select * from Persons

where Id in

(

SELECT     MAX(Id) AS Expr1

FROM         Persons

GROUP BY Name, Gender

)

 

删除重复的数据:

delete from Persons

where Id not in

(

SELECT     MAX(Id) AS Expr1

FROM         Persons

GROUP BY Name, Gender

)

 

 

题:表的关联

书名 所有者名

C#   tom

IronPython   lucy

 

SELECT  b.Name,p.Name

FROM   Books as b

left join Persons as p on b.PersonId=p.Id

 

介绍一个开源的项目

Lucene.netNPOIJQueryASP.Net AJAX  toolkit。在CodePlexSourceForge等网站上有更多的开源项目。

 

说出五个数据结构:ListDictionarySetStack(先入后出)、QueueSiteMapTree等。

 

 

有一个10个数的数组,计算其中不重复数字的个数。{3,5,9,8,10,5,3}

HashSet

            int[] values = { 3, 5, 9, 8, 10, 5, 3 };

            HashSet<int> set = new HashSet<int>();

            foreach (int i in values)

            {

                set.Add(i);

            }

 

            foreach (int i in set)

            {

                Console.WriteLine(i);

            }

 

 

现有1~100共一百个自然数,已随机放入一个有98个元素的数组a[98]。要求写出一个尽量简单的方案,找出没有被放入数组的那2个数,并在屏幕上打印这2个数。注意:程序不用实现自然数随机放入数组的过程。

参考:http://www.rupeng.com/forum/thread- 1363-1-1 .html

 

OOP是什么 类是什么

break   Continue的作用

 

  for(int i=1;1<N;1++)

for(int j=N;j>1;J++)

算法复杂度:时间复杂度(计算的步骤)、空间复杂度(计算所需要的内容)

 

for(int i=0;i<values.Length;i++)

{

     Console.WriteLine(i);

}

时间复杂度O(n)、空间复杂度O(1)

for(int i=0;i<values.Length/2;i++)

{

     Console.WriteLine(i);

}

时间复杂度O(n)、空间复杂度O(1)。不要常数、N*N>N

 

for(int i=0;i<values.Lenght;i++)

{

   for(int i=0;i<values.Lenght;i++)

{

  

}

}

时间复杂度O(n*n)、空间复杂度O(1)

计算时间复杂度、空间复杂度永远都考虑最差的情况。

 

 

           //相传有一群猴子要选出大王,它们采用的方式为:所有猴子站成一个圈,然后从1开始报数,每当数到".

      //"N的那一只猴子就出列,然后继续从下一个猴子开始又从1开始数,数到N的猴子继续出列,一直到最后".

     //"剩的猴子就是大王了。假如现在有M只猴子,报数数为N,请问第几只猴子是大王?列出选大王的过程。

 

            int M = 10;

            int N = 3;

 

            List<int> monkeys = new List<int>();

            for (int i = 1; i <= M; i++)

            {

                monkeys.Add(i);

            }

 

            int currentIndex = 0;

 

            while (true)

            {

                for (int i = 1; i <= N; i++)

                {

                    if (i == N)

                    {

                        monkeys.RemoveAt(currentIndex);

                        if (monkeys.Count == 1)

                        {

                            Console.WriteLine(monkeys[0]);

                            return;

                        }

                    }

                    currentIndex++;

                    if (currentIndex >= monkeys.Count)

                    {

                        currentIndex = 0;

                    }

                }

            }

 

 

使用缓存缓存经常访问的页面(整页面保存)

五个数同时交换首尾颠倒,不用中间变量

 

 

机试题:

1下面是一个由*号组成的4行倒三角形图案。要求:1、输入倒三角形的行数,行数的取值3-21之间,对于非法的行数,要求抛出提示非法行数!2、在屏幕上打印这个指定了行数的倒三角形。

*******

*****

***

*

2、现有1~100共一百个自然数,已随机放入一个有98个元素的数组a[98]。要求写出一个尽量简单的方案,找出没有被放入数组的那2个数,并在屏幕上打印这2个数。注意:程序不用实现自然数随机放入数组的过程。

3、一个文本文件含有如下内容:

4580616022644994|3000|赵涛

4580616022645017|6000|张屹

4580616022645090|3200|郑欣夏

上述文件每行为一个转账记录,第一列表示帐号,第二列表示金额,第三列表示开户人姓名。

创建一张数据库表(MS SQLServer数据库,表名和字段名自拟),请将上述文件逐条插入此表中。

4、一个文本文件含有如下内容,分别表示姓名和成绩:

张三 90

李四 96

王五 78

赵六 82

 

提供用户一个控制台界面,允许用户输入要查询的姓名,输入姓名并且按回车以后,打印出此人的成绩,如果不输入姓名直接按回车则显示所有人的姓名以及成绩。(注意:不能使用数据库)

Equls==的区别

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 23
    评论
评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值