- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式软件工程师笔试题华为面试宝典
1、将一个字符串逆序
2、将一个链表逆序
3、计算一个字节里(byte)里面有多少bit被置1
4、搜索给定的字节(byte)
5、在一个字符串中找到可能的最长的子字符串
6、字符串转换为整数
7、整数转换为字符串
/*
* 题目:将一个字符串逆序
* 完成时间:2006.9.30深圳极讯网吧
* 版权归刘志强所有
* 描述:写本程序的目的是希望练一下手,希望下午去面试能成功,不希望国庆节之后再去找工作拉!
*/
#include lt;iostreamgt;
using namespace std;
//#define NULL ((void *)0)
char * mystrrev(char * const dest,const char * const src) {
if (dest==NULL amp;amp; src==NULL)
return NULL;
char *addr = dest;
int val_len = strlen(src); dest[val_len] = ‘\0’;
int i;
for (i=0; ilt;val_len; i++) {
*(dest+i) = *(src+val_len-i-1); }
return addr;
}
main()
{
char *str=quot;asdfaquot;;
char *str1=NULL;
str1 = (char *)malloc(20); if (str1 == NULL)
coutlt;lt;quot;malloc failedquot;;
coutlt;lt;mystrrev(str1,str);
free(str1);
str1=NULL;//杜绝野指针 }
p=head;
q=p-gt;next;
while(q!=NULL)
{
temp=q-gt;next;
q-gt;next=p;
p=q;
q=temp;
}
这样增加个辅助的指针就行乐。 ok 通过编译的代码: #include lt;stdio.hgt;
#include lt;ctype.hgt;
#include lt;stdlib.hgt;
typedef struct List{
int data;
struct List *next;
}List;
List *list_create(void)
{
struct List *head,*tail,*p;
int e;
head=(List *)malloc(sizeof(List));
tail=head;
printf(quot;\nList Create,input numbers(end of 0):quot;); scanf(quot;%dquot;,amp;e);
while(e){
p=(List *)malloc(sizeof(List));
p-gt;data=e;
tail-gt;next=p;
tail=p;
scanf(quot;%dquot;,amp;e);}
tail-gt;next=NULL;
return head;
}
List *list_reverse(List *head)
{
List *p,*q,*r; p=head; q=p-gt;next;
while(q!=NULL) {
r=q-gt;next; q-gt;next=p; p=q;
q=r;
}
head-gt;next=NULL; head=p; return head; }
void main(void) {
struct List *head,*p; int d;
head=list_create();
printf(quot;\nquot;);
for(p=head-gt;next;p;p=p-gt;next)
printf(quot;--%d--quot;,p-gt;data);
head=list_reverse(head);
printf(quot;\nquot;);
for(p=head;p-gt;next;p=p-gt;next)
printf(quot;--%d--quot;,p-gt;data);
}
编写函数数N个BYTE的数据中有多少位是1。 解:此题按步骤解:先定位到某一个BYTE数据;再计算其中有多少个1。叠加得解。
#incluedelt;iostreamgt;
#define N 10
//定义BYTE类型别名
#ifndef BYTE
typedef unsigned char BYTE;
#endif
int comb(BYTE b[],int n)
{
int count=0;
int bi,bj;
您可能关注的文档
最近下载
- 高中物理讲义.pdf VIP
- 福禄克Fluke MDA-510 和 MDA-550 电机驱动分析仪MDA-550 MDA-510 安全须知.pdf
- 2023-2024学年七年级上期期中语文试题(含答案) .pdf VIP
- 精品在线课程汇报定稿.ppt
- 爱祖国爱家乡爱母校.pptx VIP
- 秋天的快乐PowerPoint演示文稿.pptx
- 25题技术架构师岗位常见面试问题含HR问题考察点及参考回答.pdf VIP
- 浙江省湖州市2023-2024学年高一上学期期末考试语文试题 Word版含解析.docx
- 企业性质(科斯).doc VIP
- 2023年软考初级信息系统运行管理员历年经典真题及解析part.docx
文档评论(0)