华三通信
时间是20151014上午,饿着肚子做了80分钟。昨晚投的IT,但今天做的是软件工程师的题,下午赶着上班,IT的题估计赶不上做。这个事儿办的有点乱,但也没办法。
前面是许多选择题,有C语言基础、智力题;之后两个问答题,一是指针和地址的关系、使用指针的注意点,想来没问题;一是将if语句转换为switch语句,当时不知道case后面如何加多个情况,于是就在多个值之间加逗号,结果猜错了,在c/c++中,case后真实用法是这样的:
case 1:
case 2:
case 3:
x=3;
break;
我所猜的那种case的语法结构是Pacal中的。比如:
case <x/100> of
1,3,5: write(a);
对于考试,如果不事先准备,就准备受死。再比如两个编程题,链表的各种操作似曾相识,呼之欲出,但却如骨鲠在喉,无可奈何,于是就写了个逻辑思路。预则立,不预则真的废了。我对应聘考试有坏心理习惯,也许是在学校多年积累下来的被动,不重视不认真,不全力以赴,觉得做得好也罢不好也罢,就那样。
今天跟一个朋友提到,华三通信,他立马说,通信的肯定要考链表啊,我登时觉得崩溃。我昨晚不知道准备什么,而且也累(其实是懒),草草做完网测就睡了。这是个教训。一件事要了解重点,了解比较重要的部分,这样即使应急准备的时候也能有个大致的方向。而我太多而不知道准备什么干脆就不准备的做法是敷衍。
先回忆两个编程题的题干。
1. 一个线性链表中存在重复的数据iData,要求:删除链表中的重复数据。线性链表结构为:
typedef struct node
{
int iData;
node *pNext;
}node;
2. 一个存储0~999的数组a[1000],每隔两个就删除一个元素,到数组结尾就循环到a[0]。比如,
0,1,2,3,4,5,6,7
第一次循环删除2、5、0,依次类推。
要求:输出最后一个被删除的元素在原数组中的索引值。
浙公网安备 33010602011771号