华三通信

时间是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,依次类推。

要求:输出最后一个被删除的元素在原数组中的索引值。

 

posted @ 2015-10-14 20:50  wuyefeima  阅读(110)  评论(0)    收藏  举报