嵌入式软件工程师笔试题

2009年04月11日 10:04    老郭
关键词: 笔试 , 嵌入式 , 软件工程师
1、将一个字符串逆序
2、将一个链表逆序
3、计算一个字节里(byte)里面有多少bit被置1
4、搜索给定的字节(byte)
5、在一个字符串中找到可能的最长的子字符串
6、字符串转换为整数
7、整数转换为字符串


1、char *strconv(char *p)

{

    int i,length;

    char temp;

    length = strlen(p);

    for(i = 0;i < length/2;i++)

    {

        temp = *(p + i);

        *(p + i) = *(p + length - 1 - i);

        *(p +length - 1 - i) = temp;

    }

    return p;

}



int main()

{

    char src[100];

    char *p;

    scanf("%s",src);

    p = strconv(src);

    printf("%s\n",p);

    return 0;

}


3、int cal(int data) //calculation the number of bit in one byte

{

    int a;

    int count = 0;

    a = data % 100;

    while (a != 0)

    {

        count += a % 2;

        a /= 2;

    }

    return count;

}



int main()

{

    int d,count;

    scanf("%d",&d);

    count = cal(d);

    printf("%d of one\n",count);

    return 0;

}


4、#include<stdio.h>

#include<string.h>



void findmax(char *p)

{

    int j = 0,max = 0;

    int count = 0;

    char record[200];

    char recordmax[200];



    for(int i = 0;;i++)

    {

        

        if((*(p + i) == ' ') || (*(p + i) == '\0'))

        {        

            if(count > max)

            {

                max = count;

                record[j] = '\0';

                strcpy(recordmax,record);            

            }

            count = 0;

            j = 0;

        }

        else

        {

            record[j] = *(p + i);

            count ++;

            j ++;

        }

        if(*(p + i) == '\0')

            break;

    }

    printf("%s\n",recordmax);

}

            



        

int main()

{

    char str[]="zeng weidsfdsaf langd hah";

    printf("%s\n",str);

    findmax(str);

    return 0;

}
欢迎分享本文,转载请保留出处:http://www.eechina.com/thread-155-1-1.html     【打印本页】
您需要登录后才可以发表评论 登录 | 立即注册

相关文章

相关视频演示

厂商推荐


关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备11013910号 | 京公网安备11010502021702
回顶部