欢迎来到天天文库
浏览记录
ID:22794617
大小:463.00 KB
页数:35页
时间:2018-10-31
《嵌入式软件工程师笔试题》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、1、将一个字符串逆序2、将一个链表逆序3、计算一个字节里(byte)里面有多少bit被置14、搜索给定的字节(byte)5、在一个字符串中找到可能的最长的子字符串6、字符串转换为整数7、整数转换为字符串/**题目:将一个字符串逆序*完成时间:2006.9.30深圳极讯网吧*版权归刘志强所有*描述:写本程序的目的是希望练一下手,希望下午去面试能成功,不希望国庆节之后再去找工作拉!*/#includeusingnamespacestd;//#defineNULL((void*)0)char*mystrrev(char*co
2、nstdest,constchar*constsrc){if(dest==NULL&&src==NULL) returnNULL;char*addr=dest;intval_len=strlen(src);dest[val_len]=' ';inti;for(i=0;i3、) cout<<"mallocfailed";cout<next;while(q!=NULL){temp=q->next;q->next=p;p=q;q=temp;}这样增加个辅助的指针就行乐。ok通过编译的代码:#include#include#includetypedefstructList{intdata;structList*next;}List;Lis4、t*list_create(void){structList*head,*tail,*p;inte;head=(List*)malloc(sizeof(List));tail=head;printf("ListCreate,inputnumbers(endof0):");scanf("%d",&e);while(e){p=(List*)malloc(sizeof(List));p->data=e;tail->next=p;tail=p;scanf("%d",&e);}tail->next=NULL;returnhead;}List*l5、ist_reverse(List*head){List*p,*q,*r;p=head;q=p->next;while(q!=NULL){r=q->next;q->next=p;p=q;q=r;}head->next=NULL;head=p;returnhead;}voidmain(void){structList*head,*p;intd;head=list_create();printf("");for(p=head->next;p;p=p->next)printf("--%d--",p->data);head=list_rever6、se(head);printf("");for(p=head;p->next;p=p->next)printf("--%d--",p->data);} 编写函数数N个BYTE的数据中有多少位是1。解:此题按步骤解:先定位到某一个BYTE数据;再计算其中有多少个1。叠加得解。#incluede#defineN10//定义BYTE类型别名#ifndefBYTEtypedefunsignedcharBYTE;#endifintcomb(BYTEb[],intn){intcount=0;intbi,bj;BYTE7、cc=1,tt;//历遍到第bi个BYTE数据for(bi=0;bi>1;tt=tt/2;}}returncount;}//测试intmain(){BYTEb[10]=8、{3,3,3,11,1,1,1,1,1,1};cout<
3、) cout<<"mallocfailed";cout<next;while(q!=NULL){temp=q->next;q->next=p;p=q;q=temp;}这样增加个辅助的指针就行乐。ok通过编译的代码:#include#include#includetypedefstructList{intdata;structList*next;}List;Lis
4、t*list_create(void){structList*head,*tail,*p;inte;head=(List*)malloc(sizeof(List));tail=head;printf("ListCreate,inputnumbers(endof0):");scanf("%d",&e);while(e){p=(List*)malloc(sizeof(List));p->data=e;tail->next=p;tail=p;scanf("%d",&e);}tail->next=NULL;returnhead;}List*l
5、ist_reverse(List*head){List*p,*q,*r;p=head;q=p->next;while(q!=NULL){r=q->next;q->next=p;p=q;q=r;}head->next=NULL;head=p;returnhead;}voidmain(void){structList*head,*p;intd;head=list_create();printf("");for(p=head->next;p;p=p->next)printf("--%d--",p->data);head=list_rever
6、se(head);printf("");for(p=head;p->next;p=p->next)printf("--%d--",p->data);} 编写函数数N个BYTE的数据中有多少位是1。解:此题按步骤解:先定位到某一个BYTE数据;再计算其中有多少个1。叠加得解。#incluede#defineN10//定义BYTE类型别名#ifndefBYTEtypedefunsignedcharBYTE;#endifintcomb(BYTEb[],intn){intcount=0;intbi,bj;BYTE
7、cc=1,tt;//历遍到第bi个BYTE数据for(bi=0;bi>1;tt=tt/2;}}returncount;}//测试intmain(){BYTEb[10]=
8、{3,3,3,11,1,1,1,1,1,1};cout<
此文档下载收益归作者所有