方正电子的面试

2012年5月16日

上机题:
如下图所示,转圈打印从1到n的平方。
题目大致如此,当时要求有界面,我不会VC的界面,只好用控制台输出。上图是我回来后用Qt做的。我用的解法比较繁琐,直接模拟转圈过程,将过程分成4个方向,类似状态机中的四种状态,满足条件则跳到下一个状态。
核心的代码:

应该有简单方法。
笔试题:
考的东西比较零散,绝大部分都是选择题,sizeof必考的内容出了好几道,字符数组常量最后的\0也考了好几道。还有之前没见过的位域(bit-field)问题。
问答题两道,一道说C++中malloc/free和new/delete的区别;另一道则是改错题,关于malloc和memset的使用,这个还真不会。