2016/10/08 TCL技术笔试题目

来源:互联网 发布:雅可比矩阵的逆矩阵 编辑:程序博客网 时间:2024/05/17 22:42

多数是C语言、少量的C++,两道编程题目真恶心,妈的,又是之前的的那种文本编辑器,代码不会自动换行缩进。随后贴题目和自己的解答。

  • 编程题1:
    编写一个函数revert(int* src,int* dst,int n);把指向整数数组的src中所有奇数放置到所有的偶数之前,并且奇数部分正序排列,偶数部分逆序排列,将新的序列存入到dst数组指针中。n为src和dst指向的数组个数。例如,n=8,处理前的src为{1,2,8,7,9,6,12,17},处理后的dst中数据为{1,7,9,17,12,8,6,2}。
#include<iostream>using namespace std;void revert(int* src,int* dst,int n){    int i;    int j;    int cnt_odd = 0;    int cnt_even = 0;    int tmp;    for(i = 0;i < n;i++)    {        for(j = i + 1;j < n;j++)        {            if(*(src + i) > *(src + j))            {                tmp = *(src + i);                *(src + i) = *(src + j);                *(src + j) = tmp;            }        }    }    for(i = 0;i < n;i++)    {        if(((*(src + i)) % 2) == 1)        {            cnt_odd = cnt_odd + 1;            *(dst + cnt_odd - 1) = *(src + i);        }        else if(((*(src + i)) % 2) == 0)        {            cnt_even = cnt_even + 1;            *(dst + n - cnt_even) = *(src + i);        }    }}void main(void){    int* src = (int*)malloc(sizeof(int) * 10);    int* dst = (int*)malloc(sizeof(int) * 10);    for(int i = 0;i < 10;i++)    {        *(src + i) = i * i;        cout<<*(src + i)<<"\t";    }    cout<<endl;    revert(src,dst,10);    for(int i = 0;i<10;i++)    {        cout<<*(dst + i)<<"\t";    }    cout<<endl;    free(src);    free(dst);    system("pause");}

运行结果如下所示,基本上达到了要求的目标:
实验结果


2016年10月16日更新:
昨天下午就收到了TCL 的面试通知,但是……是在杭州的武林广场,这让我很是无奈。其实很早我就知道,因为宁波的TCL不在哈尔滨开展校园招聘,宁波的那个是阿尔卡特朗讯的部门,在高新区的扬帆路那里。其实挺好的,离我现在家里车程大概也就只有40多分钟吧,而且有一个马上工作三年的高中师兄在里面。
结果昨天下午还不小心把邮件里的是否参加面试点击成了参加,导致今天HR直接电话过来问我,看你这个很奇怪啊,应该是在哈尔滨的,能来杭州参加面试。我把情况介绍了之后,人还说这两天在杭州面试,等杭州完事儿了之后安排视频面试吧!尴尬!

0 0
原创粉丝点击