面试题解(四)之Sony 笔试题

笔试题目收集(3) 1.下列程序输出结果 typedef union {long i; int k[5]; char c;} DATE; struct data { char cat; DATE cow; char dog; }; cout date按照4来对界,所以data结构体中按照最大的类型4来对界。最后结果28 2.运行下 阅读详情
题目:
    下列程序运行时会崩溃,请找出错误并改正,并且说明原因。
  1. #include <stdio.h>
  2. #include <malloc.h>
  3. typedef struct{
  4.     TNode* left;
  5.     TNode* right;
  6.     int value;
  7. } TNode;
  8. TNode* root=NULL;
  9. void append(int N);
  10. int main(){
  11.     append(63);
  12.     append(45);
  13.     append(32);
  14.     append(77);
  15.     append(96);
  16.     append(21);
  17.     append(17); // Again, 数字任意给出
  18. }
  19. void append(int N){
  20.     TNode* NewNode=(TNode *)malloc(sizeof(TNode));
  21.     NewNode->value=N;
  22.     if(root==NULL){
  23.         root=NewNode;
  24.         return;
  25.     }else{
  26.         TNode* temp;
  27.         temp=root;
  28.         while((N>=temp.value && temp.left!=NULL) || (N<temp. value && temp.right!=NULL)){
  29.             while(N>=temp.value && temp.left!=NULL)
  30.                 temp=temp.left;
  31.             while(N<temp.value && temp.right!=NULL)
  32.                 temp=temp.right;
  33.         }
  34.         if(N>=temp.value)
  35.             temp.left=NewNode;
  36.         else
  37.             temp.right=NewNode;
  38.         return;
  39.     }
  40. }
 题解:
  1. #include <stdio.h>
  2. #include <malloc.h>
  3. typedef struct tagNode
  4. {
  5.     struct tagNode *left;
  6.     struct tagNode *right;
  7.     int value;
  8. } TNode;
  9. TNode *root=NULL;
  10. void append(int N);
  11. int main(){
  12.     append(63);
  13.     append(45);
  14.     append(32);
  15.     append(77);
  16.     append(96);
  17.     append(21);
  18.     append(17); // Again, 数字任意给出
  19. }
  20. void append(int N){
  21.     TNode* NewNode=(TNode *)malloc(sizeof(TNode));
  22.     NewNode->value=N;
  23.     if(root==NULL){
  24.         root=NewNode;
  25.         return;
  26.     }else{
  27.         TNode* temp;
  28.         temp=root;
  29.         while((N>temp->value && temp->left!=NULL) || (N<temp->value && temp->right!=NULL)){
  30.             while(N>=temp->value && temp->left!=NULL)
  31.                 temp=temp->left;
  32.             while(N<temp->value && temp->right!=NULL)
  33.                 temp=temp->right;
  34.         }
  35.         if(N>=temp->value)
  36.             temp->left=NewNode;
  37.         else
  38.             temp->right=NewNode;
  39.         return;
  40.     }
  41. }
编译环境: 
        gcc (GCC) 3.2.2 20030222 (Red Hat Linux 3.2.2-5)

运行过程:
[explover@Explover 20081101]$ gcc -g finderr.c -o finderr
[explover@Explover 20081101]$ ./finderr

(本人水平有限,不足之处,请大家多多指正,谢谢!)    
用户行为数据分析 User Behavior Data from Taobao for Recommendation 一、提出问题 二、理解数据 数据来源 阿里云天池数据集:(https://tianchi.aliyun.com/dataset/dataDetail?dataId=649) 本文选取的数据集为UserBehavior.csv,共有5242880条数据。数据的具体类别如下表所示: 用户行为种类有四种,如下表所示 对于数据维度的说明如下: 在本文选取的2017年11月25日到2017年12月3日的时间范围内,不重复的用户数量为10202,不重复的商品ID数为412369,不重复的商品类目ID数为5859, 阅读详情

相关推荐

【SystemVerilog笔记(一)】数据类型

(一)内建数据类型 1.按照四值逻辑和二值逻辑分类 四值逻辑类型:integer、logic、reg、wire等线网类型 二值逻辑类型:byte、shortint、int、longint、bit 2.按照有符号和无符号分类 有符号类型:byte、shortint、int、longint、integer 无符号类型:bit、logic、reg、wire等线网类型 ※记忆:按位定义的变量是无符号的。 (二)软件常用类型 1.定宽数组 在这里插入代码片 ...

cc__cc__的博客 1万+

笔试题:预处理/结构体字符对齐/typedef的使用

1. .什么是预编译,什么时候需要预编译?** 答:预编译又称为预处理,是做些代码文本替换工作,处理以#开头的指令,比如拷贝#include包含的文本代码,#define宏定义的替换,条件编译等 ,就是编译做的预备工作的阶段。主要处理#开头的预备工作阶段,主要处理#开头的预编译指令,预编译指令指示了在程序正式编译之前就由编译器进行的操作,可以放在程序的任何位置,C编译系统对程序进行通常的编译之前首...

weixin_39447690的博客 785

保姆级教程:在Ubuntu 20.04上从零搞定ROS Noetic和RealSense驱动,为无人机开发铺路

本文提供了一份详细的Ubuntu 20.04环境下ROS Noetic和RealSense驱动安装指南,专为无人机开发环境搭建设计。从系统配置、ROS安装到RealSense驱动集成,涵盖所有关键步骤和常见问题解决方案,帮助开发者快速搭建自主空中机器人开发平台。

weixin_30329623的博客 65

C/C++题目--typedef与#define

题目:宏定义和操作符的区别。 【答案】 宏定义是C语言开始提供的3种预处理功能的其中一种。这3种预处理分别是:宏定义、文件包含和条件编译。宏定义是一个一环操作,不做计算和表达式求解,不占用内存和编译时间。 题目:以下宏MIN,输出结果为多少。 #define MIN(a,b) (a)<(b)?(a):(b) int main() { int a =2; int b...

用来学习的地方 469

本体研究综述(转)

(这篇文章是从http://imarine.blog.163.com/中转载过来的,个人觉得对本体的介绍比较全面!)本体综述本体作为一种能在语义和知识层次上描述领域概念的建模工具,其目标是捕获相关领域的知识,确定该领域内共同认可的词汇,通过概念之间的关系来描述概念的语义,提供对该领域知识的共同理解。语义Web(the Semantic Web)是在本体理论基础之上对现有Web所进行的扩展[

zhenshideni611的专栏 1838

Power BI实战:从数据清洗到可视化报表的完整流程

本文详细介绍了使用Power BI进行数据分析的完整流程,从数据获取、清洗整理到建模与可视化。通过实战案例,重点讲解了连接MySQL数据库、使用Power Query进行数据清洗、利用DAX创建核心度量值以及设计交互式报表的关键步骤与技巧,帮助用户高效完成从原始数据到专业可视化报表的转化,实现数据驱动决策。

weixin_29070721的博客 397

【C语言天天练(三)】typedef详解

typedef详解

李冰-冰斌 1856

日语五十音图速记攻略:从形象联想法到实战训练

语言学习中的记忆编码与条件反射构建是高效掌握基础的关键。其核心原理在于通过将抽象符号与具象图像、故事或已知概念关联,利用大脑对视觉和叙事信息的天然高记忆效率,从而降低认知负荷,加速识别与反应速度。这一方法的技术价值在于将机械重复转化为意义联结,显著提升长期记忆的牢固度与提取速度。在日语学习这一具体应用场景中,五十音图作为表音文字系统,正是实践这一记忆技术的绝佳对象。通过系统化的形象联想、分组对比(如平假名与片假名的对应关系)以及间隔重复的实战训练,学习者可以高效攻克这一入门难关,为后续的词汇、语法学习铺设坚

weixin_29032489的博客 378

2014腾讯实习生笔试题——define与typedef

2014腾讯实习生笔试(广州站)第26题填空题: #define MAX_NUM 1000+1 int Temp = Max_NUM*10; 则Temp的值为( ) 答案是:1010, 由于宏定义仅仅是一个简单的文本替换。替换后Tem==1000+1*10,故temp=1010,而不是想象中的10010.如想真正表达预想含义。须要加个括号:#define...

weixin_33920401的博客 174

谱方法学习笔记-下(超详细)

《谱方法学习笔记》深入介绍了傅立叶谱方法在解决偏微分方程问题中的理论和实践,提供了清晰的步骤、Matlab代码以及对一维、二维波动方程等不同问题的解析,适合对谱方法感兴趣的学习者。

图灵的猫的博客 2853

816华为OD机试真题 新系统 - 电池充电时间计算 (Java/Py/C/C++/Js/Go)

816华为OD机试真题 新系统 - 电池充电时间计算 (Java/Py/C/C++/Js/Go)

算法大师! 471

面试题解(三)之Sony 笔试题

题目:    波那其数列,1,1,2,3,5……编写程序求第十项。可以用递归,也可以用其他方法,但要说明你选择的理由。#include int Pheponatch(int);int main(){    printf("The 10th is %d",Pheponatch(10));    return 0;}int Pheponatch(int N){    -----------------

Explover的专栏 966

如何通过 GitHub Actions 使用 SSH 自动化部署到阿里云 ECS 实例

通过 GitHub Actions 和 SSH 自动化部署,可以显著提高你的开发效率和部署的可靠性。本文介绍了如何生成 SSH 密钥、将公钥添加到阿里云 ECS 实例、将私钥添加到 GitHub Secrets,以及编写 GitHub Actions 工作流来实现自动化部署。希望这篇文章对你有所帮助!

吃面不喝汤的博客 1511

面试题解(一)之Sony 笔试题

题目:    1.完成下列程序**.*. *..*..*.. *...*...*...*... *....*....*....*....*....*.....*.....*.....*.....*.....*..... *......*......*......*......*......*......*......*.......*.......*.......*.......*.......*

Explover的专栏 1005

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

面试题解(二)之Sony 笔试题

题目:    完成程序,实现对数组的降序排序#include  void sort();int main() {    int array[]={45,56,76,234,1,34,23,2,3}; //数字任意给出    sort();     return 0;}void sort(){    ____________________________________    | |     | 

Explover的专栏 650

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

typedef函数指针_经典笔试题 | 函数指针,指针函数,函数指针数组

这是一个群友发的笔试题目,里面涉及的东西也比较有意思。直接看代码void(*f[])(char*)这个是个什么东西?我们先看看下面的东西函数指针和指针函数的定义我们看个代码:int*func(inta,intb)我们之前说过运算符的优先级,「*」 的优先级低于「(」由于「*」的优先级低于「()」的优先级,因而func首先和后面的「 () 」结合,也就意味着,f...

weixin_40003046的博客 276

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

经典C语言面试题13:#define与typedef的区别

一、简介 1、#define #define为C语言中的预处理指令,不仅可以为类型取别名,还可以定义常量、变量、编译开关等。 2、typedef typedef用来给已有的类型起一个别名,主要作用如下: ① 简化复杂的类型声明,如 typedef bool (* FunPtr) (int, double); //声明了一个返回bool类型并带有两个形参的函数指针类型F...

M_joy666的博客 3157

sony笔试题

 送给找工作的xdjm】sony笔试第一部分是计算,包括概率,逻辑,统计等...1,一桌坐六人,座位分别编为1至6号,6人分别是pqrstu,问(1)u坐1号,p,q面对面坐有几种 坐法(2)p,q相邻的坐法2,十进制,九进制,三进制的换算 十进制,四进制,十六进制的换算第二部分是编程1,给出一个数组    0 1    1 1 2 1    2 1 3 3 1    3 1 4 6 4

程序员笔试题解答 4192

索尼的一道笔试题

题目描述:如何在 C++ 中调用 C 编译的函数库?反之在 C 中如果要调用 C++ 编译的文件中的函数该怎么做呢? 第一个问题相信大多人都很熟悉,我前面也有一篇博文介绍。在C++程序中调用C程序 下面重点讨论在 C 中调用 C++ 的函数。调用C++函数库,一般不能直接调用,需要将 C++ 库转换成C接口输出,方可以使用 C 调用将 C++ 函数声明为``extern "C"''(在你的 C

vividly的学习小站 1455

Sony笔试题 (估计是最简单的一题了)

*    *.*.    *..*..*..    *...*...*...*...    *....*....*....*....*....    *.....*.....*.....*.....*.....*.....    *......*......*......*......*......*....

in189的博客 311

RabbitMQ 面试题

你发一条消息,在网络上并不是一个整体飞过去的。如果消息比较大,RabbitMQ 的底层协议会把它切成多个数据包(帧),按顺序发送,Broker 收到后再拼起来。假设线程 T1 和 T2 同时用同一个 Channel 发消息:T1 发消息 A,被切成三个帧:[A1] [A2] [A3]T2 发消息 B,也被切成三个帧:[B1] [B2] [B3]如果没有任何保护,这两个线程的帧可能交错到达 Broker,变成 [A1] [B1] [A2] [B2] [A3] [B3]。

互联网叫兽 495

基于 TVM Relax BYOC 扩展 Example NPU 后端:从跑通官方流程到自定义算子融合

至于 codegen 要不要补,取决于 Example NPU 的实现细节——先跑通分区验证,再决定是否深入 codegen,是更稳妥的路径。而「扩展一个原本不支持的融合模式」这件事,恰好能证明你不是照着教程抄了一遍,而是真的理解了 BYOC 的分区规则是怎么工作的。),那么新模式即使被切出来,codegen 阶段也可能报「不支持的算子」。如果 Example NPU 的 codegen 是「按算子名硬编码」的,那么新模式切出来之后,这句话本身没问题,但偏「结果导向」,面试官会追问细节。

Maxwell_Newton的博客 287

smart-tunnel-ai · 隧道/高速智慧化 AI 应用项目

面向的工程师:一个能跑通、能改、能讲清楚的 Spring Boot + Spring AI 项目。:它不是「调了个 ChatClient 输出一句话」,而是把切块策略、增量入库、来源溯源、防幻觉、工具调用、结构化输出、评估集、密钥守卫、CI 护栏这些工程问题都落到了代码里。每一处都能指向具体类讲取舍。详见。

futurn_hero的博客 276

LeetCode 面试经典 150_多维动态规划_交错字符串(97_C++_中等)

LeetCode 面试经典 150_多维动态规划_交错字符串(97_C++_中等) 题目描述: 给定三个字符串 s1、s2、s3,请你帮忙验证 s3 是否是由 s1 和 s2 交错 组成的。 两个字符串 s 和 t 交错 的定义与过程如下,其中每个字符串都会被分割成若干 非空 子字符串: - s = s1 + s2 + ... + sn - t = t1 + t2 + ... + tm - |n - m| <= 1 - 交错 是 s1 + t

huayimenghan的博客 207

Spring 原理高频面试题全解:Bean 生命周期、三级缓存与 @Transactional 失效(2026 招聘 JD 真题复盘)

按 2026 招聘 JD 与一线面经整理 10 道 Spring 高频题:Bean 生命周期与扩展点顺序、AOP 代理生成时机、三级缓存为何必须三级、构造器注入循环依赖为何无解、@Transactional 六类失效与自调用修复三法、REQUIRES_NEW 连接池耗尽风险、事件总线同步语义与 @TransactionalEventListener、自动配置从 spring.factories 到 imports 的演进、自定义 Starter 三步走,附速查表与三条追问链。

蒙眼过河 316
上一篇: 面试题解(三)之Sony 笔试题
下一篇: 面试题解(五)之联想笔试题
explover
博客等级 码龄24年 3粉丝 7原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值