Chinaunix首页 | 论坛 | 博客
  • 博客访问: 8974
  • 博文数量: 9
  • 博客积分: 320
  • 博客等级: 一等列兵
  • 技术积分: 95
  • 用 户 组: 普通用户
  • 注册时间: 2007-11-15 16:59
文章分类

全部博文(9)

文章存档

2011年(1)

2009年(1)

2008年(7)

我的朋友
最近访客

分类: IT职场

2008-09-22 19:26:23

    2008年第一次笔试-周立功单片机发展有限公司,在国内单片机应用它做的应该是比较好的,但是产品单一,公司一般,前景暗淡。我做了一套C/C++的笔试题,5道编程,看着挺简单,但是写起来还真有些头疼,尤其是手写,总感觉怪怪的。
1.编写一个小括号的匹配检测函数,输入为一个字符串,若括号匹配,输出“括号匹配正确”;否则输出“括号匹配错误”;
2.字符匹配问题。编写一个函数删去某个字母字符或控制字符,可以如下调用:
    strcpy(pBuf,"Hello world");
    printf(erase_c(pBuf,'d'));
3. (1)二叉树定义如下:

struct {
    int data;
    bintree* left;
    bintree* right;
}*bintree;

    编写函数计算二叉树的节点数;
    (2)编写函数实现单链表翻转;
4.指出如下程序的错误并改正之(仅凭我的记忆写的,大概是这样,估计又产生了不少错误o(∩_∩)o...)。

class mstring
{
public:

    mstring &operator = (mstring &s )

    {

      m_buf = new char(strlen(s.m_buf));

      strcpy(m_buf,s.m_buf);

    }

    void clear(){delete m_buf;}

private:

    char * m_buf;

};

void Qstr(mstring &s)

{

   s.clear();

}

int main()

{

   const mstring a="Hello world";

   mstring b,c;

   mstring b=c=a;

   Qstr(b);

   return 0;

}

5.古代数学乘法计算9*33的算法描述如下:

     1×33=33 = 33                     提取1

    2×33=66 = 33+33

    4×33=132= 66+66

    8×33=264= 132+132           提取8

    9×33=297=33+264
    (1)请推理出除法的计算方法,并有条理地描述算法;
  (2)请用移位操作和加法实现乘法函数int Multi(int a, intb);

  (3)请用移位操作和减法实现除法(a/b)函数int Div(int a, intb);


阅读(452) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:VIVI-S3C2410-head.S阅读笔记-1

给主人留下些什么吧!~~