联想面试题 · 问题拆解 · C

联想相关面试题,按最终去重题目聚合。

1371 道真题 · 当前筛选命中 12 · 更新 2026-08-05

筛选题目已选:问题拆解 · C
第 1 题给定一个以逗号分隔的纯数字字符串,请编写C代码,找到其中最大的数字并和第一个数字交换,最小的数字和最后一个数字交换,最后输出处理后的字符串。要求考虑时间和空间效率,并可以口述思路。 考察字符串解析、数值比较、交换和编程实现能力编码实现问题拆解技术原理C第 2 题请用递归方式反转一个单链表,并说明其时间复杂度和空间复杂度。 考察递归理解和链表反转的边界处理编码实现问题拆解技术原理CC++第 3 题请用C语言编写一个函数,输入一个由空格、逗号或其他标点符号分隔的字符串,找出其中最长的单词并返回它。 考察C语言字符串处理、内存管理与边界条件处理编码实现问题拆解技术原理C第 4 题常量指针和指针常量是什么,一般应用场景是什么? 考察 C/C++ 指针与 const 修饰的语义区分及常见使用场景问题拆解技术原理CC++第 5 题请分别说明 C 语言中 const、volatile 和 static 的作用,并各举一个典型使用场景。 考察对 C 语言存储类修饰符语义的理解与应用问题拆解技术原理C第 6 题请实现一个函数,从 uint16_t 类型的值中提取出 4 个端口号(每个端口占 4 位),并根据端口号与引脚名称的映射关系,输出对应的引脚名称。例如,若第 0 组 4 位表示端口号,根据映射表输出相应引脚名。 考察位运算、数据提取和映射关系的实现能力编码实现问题拆解技术原理CC++第 7 题对于一个3x3的二维数组int x[3][3],按行优先存储时,前五个元素分别是什么? 考察对二维数组按行优先存储顺序的理解问题拆解技术原理C第 8 题手写实现 atoi 函数,将字符串转换为整数。 考察字符串解析、边界处理和异常输入处理能力编码实现问题拆解风险判断CC++第 9 题C语言中函数调用时参数压栈顺序是怎样的?esp和ebp指针如何变化? 考察函数调用约定、栈帧布局与栈指针管理问题拆解技术原理C第 10 题当数组作为函数参数传递时,与传递指针有什么区别? 考察函数传参时数组退化和指针传参的语义问题拆解技术原理C第 11 题请分别说明 static 关键字在 C 语言和 C++ 中的常见用法及作用。 考察对 static 在不同语言上下文中的语义理解与区分能力问题拆解技术原理CC++第 12 题使用指针访问二维数组,编写代码找出数组中的最大值并输出。 考察指针运算与二维数组本质的理解及编码实现编码实现问题拆解技术原理C