收藏 分销(赏)

2023年嵌入式工程师面试题经典.doc

上传人:w****g 文档编号:7201512 上传时间:2024-12-27 格式:DOC 页数:18 大小:44.54KB 下载积分:8 金币
下载 相关 举报
2023年嵌入式工程师面试题经典.doc_第1页
第1页 / 共18页
2023年嵌入式工程师面试题经典.doc_第2页
第2页 / 共18页


点击查看更多>>
资源描述
1、将一种字符串逆序 2、将一种链表逆序 3、计算一种字节里(byte)里面有多少bit被置1 4、搜索给定旳字节(byte) 5、在一种字符串中找到也许旳最长旳子字符串 6、字符串转换为整数 7、整数转换为字符串 style="MARGIN: 0px; COLOR: rgb(102,102,102); LINE-HEIGHT: 150%" wrap="break-word"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; } style="MARGIN: 0px; COLOR: rgb(102,102,102); LINE-HEIGHT: 150%" wrap="break-word"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; } style="MARGIN: 0px; COLOR: rgb(102,102,102); LINE-HEIGHT: 150%" wrap="break-word"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; } style="MARGIN: 0px; COLOR: rgb(102,102,102); LINE-HEIGHT: 150%" wrap="break-word"#include<stdio.h> #include<stdlib.h> #include<string.h> typedef struct shopping { char goods[100]; struct shopping *next; }SHOP; SHOP *buildlink() //创立链表 { char goods[100]; SHOP *head,*p,*h; p = (SHOP *)malloc(sizeof(SHOP)); head = p; head->next = NULL; printf("Input three goods:"); for(int i = 0;i < 3;i++) { scanf("%s",goods); p = (SHOP *)malloc(sizeof(SHOP)); strcpy(p->goods,goods); p->next = NULL; if(head->next == NULL) { head->next = p; h = p; } else { h->next = p; h = h->next; } } return head; } void showlink(SHOP *head) //显示链表 { SHOP *p; p = head->next; while(p != NULL) { printf("%s ",p->goods); p = p->next; } printf("\n"); } SHOP *revlink(SHOP *head) //反转链表 { SHOP *p,*newp; p = head->next; head->next = NULL; while(p != NULL) { newp = p; p = p->next; newp->next = head->next; head->next = newp; } return head; } int delnode(SHOP *head,char *str) { //delete success return 1,else return 0 SHOP *q,*p = head; while(p->next != NULL) { q = p; p = p->next; if(!strcmp(str,p->goods)) { q->next = p->next; free(p); //p = q->next; return 1; } } return 0; } int main() { SHOP *head; SHOP *newhead; head = buildlink(); showlink(head); newhead = revlink(head); showlink(newhead); showlink(head); printf("Delete a node:"); char str[50]; scanf("%s",str); int i; i = delnode(head,str); showlink(head); if(i == 1) printf("Delete successful!\n"); return 0; } style="MARGIN: 0px; COLOR: rgb(102,102,102); LINE-HEIGHT: 150%" wrap="break-word"#include<stdio.h> #include<stdlib.h> #include<string.h> typedef struct shopping { char goods[100]; struct shopping *next; }SHOP; SHOP *buildlink() //创立链表 { char goods[100]; SHOP *head,*p,*h; p = (SHOP *)malloc(sizeof(SHOP)); head = p; head->next = NULL; printf("Input three goods:"); for(int i = 0;i < 3;i++) { scanf("%s",goods); p = (SHOP *)malloc(sizeof(SHOP)); strcpy(p->goods,goods); p->next = NULL; if(head->next == NULL) { head->next = p; h = p; } else { h->next = p; h = h->next; } } return head; } void showlink(SHOP *head) //显示链表 { SHOP *p; p = head->next; while(p != NULL) { printf("%s ",p->goods); p = p->next; } printf("\n"); } SHOP *revlink(SHOP *head) //反转链表 { SHOP *p,*newp; p = head->next; head->next = NULL; while(p != NULL) { newp = p; p = p->next; newp->next = head->next; head->next = newp; } return head; } int delnode(SHOP *head,char *str) { //delete success return 1,else return 0 SHOP *q,*p = head; while(p->next != NULL) { q = p; p = p->next; if(!strcmp(str,p->goods)) { q->next = p->next; free(p); //p = q->next; return 1; } } return 0; } int main() { SHOP *head; SHOP *newhead; head = buildlink(); showlink(head); newhead = revlink(head); showlink(newhead); showlink(head); printf("Delete a node:"); char str[50]; scanf("%s",str); int i; i = delnode(head,str); showlink(head); if(i == 1) printf("Delete successful!\n"); return 0; } style="MARGIN: 0px; COLOR: rgb(102,102,102); LINE-HEIGHT: 150%" wrap="break-word"#include "stdio.h" #include "stdlib.h" int myAtoi(char *s); void main() { int i; char *s=(char *)malloc(10*sizeof(char)); if (s==NULL) { printf("fail to malloc s\n"); return; } while(1) { scanf("%s",s); if ((*s)=='q') { break; } i = myAtoi(s); printf("%d\n",i); } } int myAtoi(char *s) { int i=0; int flag=0; if (s==NULL)return 0; if (*s=='+'||*s=='-') { if (*s=='-') { flag=1; } s++; } while(*s!='\0' && *s>='0' && *s<='9') { i=(int)(*s)-'0'+i*10; s++; } if (flag)i=-i; return i; }
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服