职友集>程序员面试题 > 程序员技术类面试、笔试题汇总

程序员技术类面试、笔试题汇总

2015-09-22 06:30:01 阅读( 222 )

2413人 收藏本页

标签:程序员面试题

110、开放式问题:如果程序连不上SQLServer数据库服务器服务器,你会怎么排除这个故障?
参考解答:首先ping一下服务器IP,看是否能够ping通,如果不能ping通,则看是否网络有问题;如果能ping通,再telnet一下服务器的1433端口,看是否能够连通;如果不能连通则可能是SQLServer服务停掉了或者是服务器上的防火墙封掉了1433端口;如果能连通再检查是不是本地程序的问题、驱动的问题。

111、下面的IP地址有什么含义?
127.0.0.1:本地回环地址(LoopBack),localhost
0.0.0.0:监听所有的网卡。AnyIP。
255.255.255.0

112、不用JQuery等框架实现AJAX无刷新登录。
提示:用纯XMLHttpRequest实现。
113、单点登录。
114、Http状态码各是什么意思。
301 :重定向
404 :页面不错在
500:服务器内部错误
115、 对html文本框进行赋值的JQuery语句,对html文本框进行取值的JQuery语句,对TextBox服务端控件进行取值的语句JQuery。
116、IE和FireFox的不同,IE6和IE8的不同。JQuery
XMLHttpRequest。不同浏览器实现AJAX的代码是不一样的。InnerHTML。
CSS、Javascript、dom。
我们项目开发中为了避免这些跨浏览器兼容的问题,就是用JQuery框架,他帮我们屏蔽了浏览器的差异。

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

asp.net错误机制。ErrorPage,Page_Error,Application_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.net、NPOI、JQuery、ASP.Net AJAX toolkit。在CodePlex、SourceForge等网站上有更多的开源项目。

说出五个数据结构:List、Dictionary、Set、Stack(先入后出)、Queue、SiteMap、Tree等。

有一个10个数的数组,计算其中不重复数字的个数。{3,5,9,8,10,5,3}
用HashSet
int[] values = { 3, 5, 9, 8, 10, 5, 3 };
HashSet set = new HashSet();
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 monkeys = new List();
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;
}
}
}

使用缓存缓存经常访问的页面(整页面保存)
五个数同时交换首尾颠倒,不用中间变量

来自IT公司面试手册

下一篇:Pass-by-value Pass-by-reference Pass-by-value-result Pass-by-name

上一篇:一网友自己设计的面试题

亲~ 如果您有更好的答案 可在评论区发表您独到的见解。

您想查看更多的信息: 面试题