导航:首页 > 程序命令 > 程序员面试笔试

程序员面试笔试

发布时间:2023-02-14 16:10:27

java面试的时候一般考什么

Java程序员应聘一般要经过笔试和面试。作为一个技术人员,特别是刚出道的,笔试的成绩是比较重要。以下是我经过几次笔试总结的一些经验教训。

一般来说,试题会分为三个部分,Java基础、数据库基础和综合题。

首先是Java基础,这个很简单,也就是考考你对Java语言本身的理解,包括语法,类库的使用等。有选择题,也会有写代码题。写代码的时候认真仔细就是了。基础题答案一般都比较死,所以尽量不要错。在这,出一道我遇到的题考考大家,Java编程:把American,Japan,China,France,Brazil按英文字母排序。说说思路就行了:)

其次是数据库。准确的说,考的不是数据库,而是SQL语句。一般题型是,给两三个表,然后让你根据需求写SQL。最普通的就是学生表、选课表和成绩表。要掌握的就是连接查询,还有就是一些函数(建表、表操作等就不说了哈)。其实这些都相当简单,但是往往被新手忽略。我就遭过,因为有半年没写过SQL了,连接查询搞忘完了,有两次笔试都空起,结果可想而知。这些是必备技术,千万不能空起啊!

然后是综合题。之所以说是综合题,是因为包含的内容比较多,一般都是主观题。这里,人家是想看看你对Java高级技术以及周边技术的了解程度和运用能力,说白了,就是考概念和考应用题。这里说的Java高级技术,也就是J2EE架构中的技术,这些不会的话,人家是不得要你的。如果你会一些流行的技术框架,那就更好了。所谓Java周边技术,包括HTTP,HTML,XML,UML,JavaScript,CSS等,要求一般不是很高,要了解,比如让你用HTML写个表单你要会。关于刚才提到的技术或者框架,希望要了解其工作的原理和机制,一般要考,比如让你说说Struts的MVC。关于应用题,可能出一道网络应用来考。

以上就是我笔试的经验,一般是这样,不过我也遇到过变态的。一次笔试,就被彻底甩翻,C/C++、数据库、Java技术、Shell编程、网络协议、Unix、软件工程全部上了。

如果笔试做的好,那就成功大半了,不过不要轻视面试哦!

关于面试技巧,网上太多了,我就不多说。作为技术人员,虽说以技术为主,但沟通能力同样重要,面试时要主动,表达要清楚,要微笑,要诚实,要稳重。

关于价钱,说实话,我们中国的程序员是世界上最好的程序员,我们拿最少的钱,干最多的活。刚出道的程序员,在成都,一般来说,试用不会超过2000,多半是1500左右,做好被资本家剥削的心理准备吧

⑵ 夏普程序员笔试题和面试题答案目

试题1:

void test1()

{

char string[10];

char* str1 = "0123456789";

strcpy( string, str1 );

}

试题2:

void test2()

{

char string[10], str1[10];

int i;

for(i=0; i<10; i++)

{

str1[i] = 'a';

}

strcpy( string, str1 );

}

试题3:

void test3(char* str1)

{

char string[10];

if( strlen( str1 ) <= 10 )

{

strcpy( string, str1 );

}

}

解答:

试题1字符串str1需要11个字节才能存放下(包括末尾的’\0’),而string只有10个字节的空间,strcpy会导致数组越界;

对试题2,如果面试者指出字符数组str1不能在数组内结束可以给3分;如果面试者指出strcpy(string, str1)调用使得从str1内存起复制到string内存起所复制的字节数具有不确定性可以给7分,在此基础上指出库函数strcpy工作方式的给10分;

对试题3,if(strlen(str1) <= 10)应改为if(strlen(str1) < 10),因为strlen的结果未统计’\0’所占用的1个字节。

考查对基本功的掌握:

(1)字符串以’\0’结尾;

(2)对数组越界把握的敏感度;

(3)库函数strcpy的工作方式,

(4)对strlen的掌握,它没有包括字符串末尾的'\0'。

试题4:

void GetMemory( char *p )

{

p = (char *) malloc( 100 );

}

void Test( void )

{

char *str = NULL;

GetMemory( str );

strcpy( str, "hello world" );

printf( str );

}

解答:

试题4传入中GetMemory( char *p )函数的形参为字符串指针,在函数内部修改形参并不能真正的改变传入形参的值,执行完

char *str = NULL;

GetMemory( str );

后的str仍然为NULL;

试题5:

char *GetMemory( void )

{

char p[] = "hello world";

return p;

}

void Test( void )

{

char *str = NULL;

str = GetMemory();

printf( str );

}

试题5中

char p[] = "hello world";

return p;

的p[]数组为函数内的局部自动变量,在函数返回后,内存已经被释放。这是许多程序员常犯的错误,其根源在于不理解变量的生存期。

试题6:

void GetMemory( char **p, int num )

{

*p = (char *) malloc( num );

}

void Test( void )

{

char *str = NULL;

GetMemory( &str, 100 );

strcpy( str, "hello" );

printf( str );

}

试题6的GetMemory避免了试题4的问题,传入GetMemory的参数为字符串指针的指针,但是在GetMemory中执行申请内存及赋值语句

*p = (char *) malloc( num );

后未判断内存是否申请成功,应加上:

if ( *p == NULL )

{

...//进行申请内存失败处理

}

试题7:

void Test( void )

{

char *str = (char *) malloc( 100 );

strcpy( str, "hello" );

free( str );

... //省略的其它语句

}

试题7存在与试题6同样的问题,在执行

char *str = (char *) malloc(100);

后未进行内存是否申请成功的判断;另外,在free(str)后未置str为空,导致可能变成一个“野”指针,应加上:

str = NULL;

试题6的Test函数中也未对malloc的内存进行释放。

剖析:

试题4~7考查面试者对内存操作的理解程度,基本功扎实的面试者一般都能正确的回答其中50~60的错误。但是要完全解答正确,却也绝非易事。

对内存操作的考查主要集中在:

(1)指针的理解;

(2)变量的生存期及作用范围;

(3)良好的动态内存申请和释放习惯。

再看看下面的一段程序有什么错误:

swap( int* p1,int* p2 )

{

int *p;

*p = *p1;

*p1 = *p2;

*p2 = *p;

}

在swap函数中,p是一个“野”指针,有可能指向系统区,导致程序运行的崩溃。在VC++中DEBUG运行时提示错误“Access Violation”。该程序应该改为:

swap( int* p1,int* p2 )

{

int p;

p = *p1;

*p1 = *p2;

*p2 = p;

}

预处理器(Preprocessor)

1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)

#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL

2. 写一个“标准”宏MIN,这个宏输入两个参数并返回较小的一个。

#define MIN(A,B) ((A) <= (B)?(A) : (B)) 1 2

⑶ 只有程序员面试要考试吗

不是的
前端面试不一定都需要笔试。
因为像一些比较技术比较牛的前端开发工程师,它是很难接受笔试,面试的,因为笔试的内容一般都是一些基础方面的内容但是这些内容在实际应用过程中是很少用到的,所以一般笔试是很不容易通过的,但是他的技术能力是非常牛的,所以他是不会接受笔试的,有些公司也不一定需要笔试。

⑷ 程序员面试一般是先笔试还是先面试,如果面试通过了还会有别的嘛

一般是先笔试,然后面试,面试最少会有两次技术面,一般是3次甚至更多也有,最后如果通过会有hr面,一般没啥大的性格人品问题就过了,

⑸ java程序员笔试面试都考什么呀

1)面向对象的基础知识
2)java写一段程序,通常是排序或者计算后输出的
3)关于web开发的基础知识,比如什么是jsp,servlet与jsp的区别,session与cookie的区别
4)对常用的开源框架的了解,如struts,spring,hibernate,ibatis等

⑹ 如何看待程序员面试让上机做编程题,这样的公司多吗

从事软件开发多年,上机写代码这种考查模式在国外用的比较多,很多国内的公司也在学习这种方式,这种方式能直接看出写代码的能力,但对上机做编程题目这种事情很多成熟的程序员觉得是一种侮辱,有一些程序员看到有笔试直接就选择走人了,这些东西在面试之前应该有沟通,事情不会变得这么被动,因为对于很多有能力的程序员,能够请到面试已经非常不容易了,能力越强脾气越大。

直接上机做编程测试能力的公司不是很多,从事软件开发十几年主要经历了四家公司,面试的时候主要靠面谈为主,因为编程行业能力的高低通过交谈就能了解差不多,只需要根据简历上写的项目进行细节沟通,如果真的做过几句话就能看出大概的水平,所以很多公司压根不搞什么笔试或者上机写代码的事情,编程这个职业主要靠时间的积累,并且在积累中不断完善自己的知识体系,慢慢提高自己的认知。

一个程序员如何提升自己的能力水平,对于初学者来讲首先是学习好一门编程语言,开始学习阶段觉得编程语言就是天了,好像是学会了编程语言就能做任何的东西了,随着编程语法的学习完毕就开始尝试做一些题目,结果发现距离语法真的非常遥远,所以有很多的初学者有一种感概明明在课堂什么都明白了,结果到真正自己实践的时候什么都想不起来,这是初学者必然的经历,编程本身就是一种不断磨练编程思想的过程,编程语言属于在辅助类基础技能,没有辅助就不会写代码,编程设计思想再牛也不可能实现,两者是相辅相成的作用,编程思想里面包含着仙姑经验的积累。

很多人觉得很奇怪有些公司也不进行面试也不让上机写代码,就是通过不到一个小时的闲聊就能把一个人的水平能力和工资水平给定位下来,通过面试就能检测出编程思想以及编程基础,编程基础类的考察只需要问几个简单的语法问题就能做个大概的检测,编程思想就是完全的编程意识以及编程经验的积累,所以一些企业在招聘的时候明确写着就相关开发经验的人优先,企业招聘的目的就是希望要的人在短时间内能够上岗直接切入到项目开发中去,整体来看是不是需要上机写代码测试完全看每个公司的技术文化了。

有些技术类的公司对于程序员的基本功要求特别严格,有个同事在第一家技术公司的时候,部门技术经理特别关注程序员的基本语法,只要是简单的代码语法错误,就能到部门的黑板通报,开始实施阶段很多人上了黑板,后来随着时间的推移上去的人越来越少了,同事说到自己上了两次黑板都是因为在使用指针的时候没有初始化导致,到今天还是记忆尤新,如果在技术生涯的初期能够经历过这种企业是一个技术人的幸运了,越是严格要求的领导或者公司越是有利于技术人员 的成长,至于在面试的时候要不要上机这个就看每个公司的技术文化了,一般注重代码基础的领导会引领这个事情,希望能帮到你。

这是一个正常的流程,我觉得有时候还是有必要的考验一下面试者的。

以前这种面试实际上是很平常的,但是发展到现在越来越多的人对这样的面试很反感,大概率的原因是因为很多人更多的是在搬代码,并且搬的很成功,而真正注意写代码的人反而越来越少。
笔试和上机编程好不好?
我觉得挺好的,这样可以刷下去很多划水的人,有的人,写代码的能力并不强,但是搬代码的技术一流,随着技术越来越晚上,一些解决各种bug的网站越来越流行,现在更多的毕业生为了高工资,变成了搬代码的人,他们能解决问题吗?能,但是是他们自己的解决的吗?不是,更多的是他们通过搜索的手段,问度娘,问谷歌,渐渐的形成了一个可以解决问题的方案,虽然问题解决了,但是等遇到一个需要创新开发的时候,他们就完了,基本上没有了自我的思维。

笔试和上机可以有效的防止这类人进入公司,实际上也是一种不错的手段。

这样的公司多不多?
据我所致,目前来讲上机编程的公司不是很多,毕竟,每个公司所使用的编程软件不同,有的公司制作的软件也比较具有保密性,没办法直接考程序员的实际能力,只能通过一些算法测试,或者是什么测试,来简单的排除掉那些搬运的人。

所以上机测试的效果并不是特别好,一般的公司都会选择用笔试的方式。

我遇到过不少笔试的,上机的从来没有遇到过。

我一个同事之前换工作的时候倒是遇到过,按他所说,这样的测试并没有什么效果,毕竟测试题出得很浅,太难的问题,基本上短时间内很难解决,也不会有那么长的面试时间。

其实,在我看来,这个上机面试并没有那么大的用途,毕竟测试不到太多的东西,还不如看他自己写过的代码来的更快。至于这样的公司多不多,真没办法说,毕竟没有统计过,根据我的经验,我觉得不会太多。

笔试的我见过,但是上机的没有过。

1.笔试可以有
这么说嘛,其实简单的笔试的话肯定是可以的。因为笔试的话可以让招聘者知道你大概的能力定位在什么位置?一些逻辑编程可以测试你的逻辑能力。尤其是在it这个行业,逻辑能力是非常重要的。

如果说你是一个已经有工作经验的人。其实笔试就没有那么重要了。这时候看中的一般差不多就是你曾经的项目经历。

如果说让你做一些项目上的,比如说项目架构了这种的,你可以拒绝回答。因为我之前就有听到过说招聘产品经理,让他去设计一个产品的。结果这个公司就是通过一直招聘产品经理。然后让产品经理去设计产品相关的功能,最后再把这些所有求职者的产品相关的思维组合到一起。

虽然说这总公司是很少的,但是也不排除是有只通过这种方式来满足产品需要的。

所以解释的时候可以大概的写一个思路代码的流程,但是可以不用全部都写。

2.上机测试
我觉得这个确切的来说是有一点过分的。像这种上机考试的话,肯定他是需要一个比较完整的项目。但是这种项目谁都不知道是他们公司需要,还是让他仅仅是为了做测试。所以像这种事情完全可以直接拒绝。

在这里大概说明一下。 找工作是一个双向的过程 ,如果说是你无法接受这个公司相关的制度,或者说是相关的流程。其实你可以趁早放弃这种公司的,不然的话即使是你笔试面试都过啦,你到公司之后也会因为你自己的价值观跟企业的文化匹配不到一起。迟早还是要辞职的,所以你要慎重考虑。

其实面试的时候笔试和机试都是it的正常流程,但是在国内被玩烂了,面试和机试过程中,会有公司内遇到的问题做为面试内容的,也许是个人也许是公司,让你解决这样那样的问题,这样子的都是垃圾

作为一个老程序员,关于程序员面试的话题,非常有意思,特别有的聊。其实在 IT 界面,有两个不算公开的秘密,也就是两个不成文的习惯或者规定吧,关于面试的。

让老程序员做笔试题是一种侮辱
很多程序员,尤其是有经验的程序员,去面试的时候,尤其是去小公司面试的时候,如果对方给你出了一套笔试题,很多程序员会说: 我转头就走,这是对我经验水平的侮辱 。

你们是不是感觉很吃惊,还有这种道理?确实是,我有一次去一个创业公司面试,对方给我出了一套笔试题,我做完了,面试完回去跟一些同事聊笔试题的事,他们会惊讶的说:你竟然把笔试题做了?你是有经验的程序员,不应该经过笔试的,直接面试就行,笔试是一种侮辱。那是我才发现,好多程序员都这么认为的。

但是,我感觉这是一种病态思维,你既然去面试,其实笔试也是面试的一种,你去大公司比如 BAT 这样的公司的时候,也会有笔试,而且层层面试好几轮,你都能忍,一些小公司给你出笔试题,你竟然受不了?公司用什么方式来面试你,是公司的选择和考量,当然了,面试是一种双向选择,如果你感觉是侮辱,当然可以选择不面了,这是双方面试的权利。

但是,我感觉笔试是一种正常的流程,跟有没有经验没有关系。有经验了,你笔试你确定能过么?

很多程序员都不会选择上机测试
还有一种就是面对上机做题的面试,很多程序员都不喜欢,其实我也不喜欢的,大部分程序员好像遇到上机面试的情况,也是选择扭头就走。

其实,我感觉上机测试是可以接受的,但是是有条件的,那就是上机做题,可以做算法题,这种方式我能接受。

有一次我去面试,他让我上机做题,竟然跟我说用 Android 写个什么功能,什么模块,简直了,这种题怎么做?直接去实现功能模块,写其中的一个点,我都不熟悉需求,也不熟悉功能模块,上来就写,怎么做?没法弄。我直接就走了。

算法题属于比较明确的东西,上机做两道应该是可以接受的。

你问上机做题的这样面试的公司多吗?可以明确地告诉你,不多,我工作这么多年,面试了很多公司,只遇到过两家。

我是负责我们公司技术面试的,机试环节必不可少。题目不会很难主要是考核程序员的感觉,只有有感觉的程序员才能写好大程序,这很关键。

这主要看做什么了,我最头疼的是拿一个构架来靠你函数命令。我都是自己写数学模型和函数。我哪知道这个构架的函数名?

务实啊,说明人要的是能实干的程序猿,没什么奇怪。面试需求很明确,要会干的。找领导才找会说的。刚毕业面试的时候遇见过这种机试,程序猿这行算是工科,靠技术吃饭,面试动手实战是正常的。

支持,不然很多水逼,划水货太多了

这样的公司会存在

基于以下4个原因:

1 面试的人很多,不想花过多的时间去筛选。这样做题,可以快速过滤一些滥竽充数的人

2 通过合理的上机操作,有针对性地找合适的人,匹配的人也能快速完成上机操作

3 标准,对面试者统一对待,以免主观原因造成误判

4 面试者的配合度,一般看到机试,有人就会直接退出。(我遇到这种情况,就会直接走)

以上4个原因,都是较为正式的原因,还有一个主要原因就是能力不行,面试官无法正确筛选简历,面试官无法从面试中获取想要的信息并加以判断。

基于最后一个原因就是我会选择直接走的原因,面试官能力不行,表示公司对此招聘的用功不足,该公司没有能力或没有意愿重视此次招聘。即使入职,收到的待遇不会重视,没有必要把自己的前景压在一个不会重视你成果的公司上。

⑺ 为什么程序员越来越排斥面试时做题

说到程序员面试题目的问题,正常来讲越是老程序员越是不怎么喜欢做些面试题目,更多的老程序员由于长期在一个行业呆着,知识的全面性差些,如果不注重涉猎,在做面试题目的时候,有些很简单的题目都回答不上来,这是程序员的一个通病,有问题已经习惯于从网络寻找问题的答案,所以直接在没有网络状态下有些题目做起来感觉相当的吃力,大部分的程序员都会存在类似的感觉,所以很多老程序员去参加面试的时候,发现有笔试的题目,有的直接就走人。

坦白来讲笔试的题目,最初设置的初衷是为了设置门槛,检查下基本功,对于真正的高手,很难通过一两个题目就能得出一个人水平的高低,毕竟编程不仅仅是掌握个基本功,还要需要编程思想以及框架思想,这种内在东西主要还是靠真正的技术面试辨别。

这就是很多老程序员有点鄙视笔试的一个很重要的原因,毕竟这只是基本功主要还是编程思想做依靠。

不待见笔试的程序员不见得水平不咋样,主要觉得靠几个题目很难辨别出真实水平,从内心还是有一丝鄙视的意思。程序员的差距一方面表现在编程思想,还有很大一部分是基本功,基本功扎实了才能敢于做一些事情,不要为自己的年龄找借口,很多程序员觉得自己都工作好多年了出来找个工作还要做什么笔试题目,从心理上接受不了,很多时候是胆怯的表现,平时他专注于一个领域的研究,把很多基础的东西都给忘掉了,内心当然有恐惧感,所以高水平的程序员何惧笔试题目。

⑻ 程序员面试时笔试题没写好,是不是一定没戏算法题写错了,是不是一定没戏了

不一定。不过如果笔试题成绩不高的话,一般在安排面试上,可能顺序比较靠后一些。一般情况下,第二轮的面试顺序是由第一轮的笔试成绩,由高到低安排的。有的时候面试时,面试官可能会对笔试时,面试者在某些题目的回答进行提问。

⑼ 程序员社招为什么没有笔试

首先,当前IT行业内进行程序员招聘时,笔试通常只针对实习岗位和初级开发岗位的应聘者,而主力开发(研发)岗位招聘人才时通常只会采用面试的方式,根据不同的岗位特点,有的团队需要两轮面试,而有的团队则需要三轮以上的面试。

由于程序员岗位的特殊性,笔试通常很难能够为程序员提供一个较好的能力考察场景,通常只能简单考察一下应聘者的知识结构和对于一些基本算法的掌握情况,而工作能力的考察通常需要面试官与应聘者通过交流(基于开发场景)来进行初步的判断,所以目前很多技术团队在招聘时都只采用面试的方案。
对于程序员来说,如果面试初级岗位(含实习岗位和助理开发岗位),通常对于笔试并不会有抵触情绪,通过笔试也能够让用人单位了解自己的知识结构和技术特点,从而安排适合自己的技术岗位和发展方向。目前不少技术团队在进行人才招聘时,应聘者完成笔试就会马上安排面试,此时应聘者会带着自己的笔试成绩参加面试,这个过程往往对于提升面试效率和面试体验都有比较积极的意义。
对于主力程序员来说,如果已经具有了比较丰富的开发经验,如果再安排笔试环节,程序员会有两种感觉,其一是该团队并不急缺人才,其二是面试团队不够专业(面试官中没有技术专家),这两个感觉都会让程序员有一定的顾虑。目前一部分技术团队在进行人才招聘的时候,会给应聘者一定的自主权,可以越过笔试直接参加面试,这既能够体现出面试团队的专业性,同时也能够打消应聘者的一些顾虑。
我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续写一些关于互联网技术方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。

⑽ 程序员面试笔试多吗

不多
程序员考试属于全国计算机技术与软件专业技术资格考试(简称计算机软件资格考试)中的一个初级考试。考试不设学历与资历条件,也不论年龄和专业,考生可根据自己的技术水平选择合适的级别合适的资格,

阅读全文

与程序员面试笔试相关的资料

热点内容
php卡死源码 浏览:574
time库中的clock函数python 浏览:989
cad视觉移动命令怎么打开 浏览:821
安卓java调用python 浏览:395
java标准时间 浏览:137
华为服务器湖北渠道商云主机 浏览:30
韩式面部护理解压视频 浏览:301
pdf换成jpg图片 浏览:897
dh加密算法 浏览:107
安卓手机如何隐藏微信信息提示 浏览:632
nodejs解压缩 浏览:262
直流双转子压缩机 浏览:952
pythonxmlstring 浏览:822
用私钥加密之后可以用公钥解密 浏览:788
ug如何启动服务器 浏览:444
csgo防抖动命令 浏览:960
如何弄到手机app页面的源码 浏览:441
androidwindows7破解版 浏览:363
解压视频动画怎么拍 浏览:748
连涨启动源码 浏览:163