试题(1)

一、不定项选择题(凭印象写的,没有顺序)(每题5分,共65分,13题):

1、define  N  2

     define  NTI(n)  N*n+n

   Sum=N*NTI(N);

   问Sum为多少?

答:

Sum = N*NTI(N)=N*N*N+N = 2*2*2+2=10

 

2、以下几个哪个优先级最高?

A.%           B.<<           C.忘了          D.<<=

B. <<最高

3、一个12人玩的游戏需要正好75分钟,有六个后备人员轮流替换从开始就参加玩游戏的人,也就是说所有参加游戏的人,包括后备人员,在这个游戏中都玩了同样长的时间。他们每人玩了多长时间?

A. 30分钟  B. 40分钟  C. 50分钟

D. 55分钟  E. 60分钟

答:游戏总耗时 12*75,总共18个人,那么每个人:900/18=50,选择C

4、在跑马场的跑道上,有A B C 三匹马,A在一分钟内能跑两圈,B能跑三圈,C能跑四圈。现将三匹马并排在起跑线上,准备向同一个方向起跑。请问:经过几分钟,这三匹马又能并排地跑在起跑线上了?(选项忘了)

答:A每圈30秒,B每圈20秒,C每圈15秒,公倍数60秒,一分钟

5、61个球队,两两比赛,胜者晋级,败者淘汰。如果淘汰后的队伍数是单数,则首支队伍轮空直接晋级,剩下的队伍继续进行淘汰赛,直至选出最后胜者为止,问一共需进行几场比赛?(选项忘了)

答:(1)一支队伍轮空,直接晋级,30场比赛

(2)31个队伍,一支队伍轮空,15场比赛,16强

(3)16进8 8场

(4)8进4 4场

(5)4进2 2场

(6)2进1 1场

故:30+15+8+4+2+1=60场

6、有关霍夫曼树和平衡树的选择题(定义什么的去看看,有个选项说霍夫曼树可应用于编码)

复习下哈夫曼树和平衡树

7、有一题关于获取mac地址的函数(题目给出一个函数的实现代码),考的是字符串的东西,还有sprintf函数

(下面是函数中运用sprintf函数的代码:    sprintf(mac,"%02X-%02X-%02X-%02X-%02X-%02X",
         Adapter.adapt.adapter_address[0],
         Adapter.adapt.adapter_address[1],
         Adapter.adapt.adapter_address[2],
         Adapter.adapt.adapter_address[3],
         Adapter.adapt.adapter_address[4],
         Adapter.adapt.adapter_address[5]);

有几行有标记,问你标记的这几行中哪几行有问题或隐患,给出选项要你选,是道多选题。

如果遇到这个临场发挥吧,不知道题目是什么。

   8、还有一题找图形规律,很简单。

   目前只能回忆这么多。

二、编程题:

1、给一个结构体(15)

Struct NODE_S{

int  data;

NODE_S  *next;

NODE_S  *preptr;

}

给一个头指针指向该结构体的节点的链表,写一函数判断该链表是否是双向循环链表。

答:

(1)判断是不是循环量表

设置两个指针(fast, slow),初始值都指向头,slow每次前进一步,fast每次前进二步,如果链表存在环,则fast必定先进入环,而slow后进入环,两个指针必定相遇。(当然,fast先行头到尾部为NULL,则为无环链表)程序如下:

bool IsExitsLoop(slist *head)
{
    slist *slow = head, *fast = head;

    while ( fast && fast->next ) 
    {
        slow = slow->next;
        fast = fast->next->next;
        if ( slow == fast ) break;
    }

    return !(fast == NULL || fast->next == NULL);
}

 

(2)再反向遍历,如果也是循环链表,就是双向循环链表

 

2、给一个字符串,写一个函数返回该字符串的最长回文子串的长度,无回文子串则返回0。(20分)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值