浙江大华2011.10.10校园招聘会笔试题

浙江大华笔试题 浙江大华的笔试题,2013年毕业的学生用的着。 立即下载
请写出下面程序的输出结果:(答案在下面)

1、

int count = 3;
int main(void)
{
	int i, sum, count = 2;
	for(i=0,sum=0; i<count; i+=2,count++)
	{
		static int count = 4;
		count++;
		if(i%2 == 0)
		{
			extern int count;
			count++;
			sum += count;
		}
		sum += count;
	}
	printf("%d %d\n",count, sum);
	return 0;
}

2、

void func(char str[50])
{
	printf("A %d B %d ",sizeof(str), strlen(str));
}
int main(void)
{
	char stra[] = "HelloWorld";
	char *strb = stra;
	printf("C %d D %d ",sizeof(stra), sizeof(strb++));
	func(++strb);
	printf("E %d F %d\n",strlen(stra), strlen(strb++));
	return 0;
}

printf("C %d D %d ",sizeof(stra),sizeof(strb++)); 中的sizeof(strb++)并不对sizeof函数中strb进行自增运算,只是简单的求这个指针的大小,此时的strb指针还是指向stra。

3、

#include <vector>
int func(std::vector<int>vec)
{
	static int k = 2;
	std::vector<int>::reverse_iterator it;
	for(it = vec.rbegin(); it!=vec.rend(); ++it)
	{
		k += *it%2==0? ++*it: (*it)++;
	}
	return k;
}
int main(void)
{
	std::vector<int>vec;
	for(int i = 0; i<4; i++)
	{
		vec.push_back(i);
		printf("%d ",func(vec));
	}
	return 0;
}

 4、

class Base
{
public:
	int m_a;
	Base(int a=2):m_a(a)
	{
		printf("A %d ",m_a);
	}
	virtual ~Base()
	{
		printf("B %d ",m_a);
	}
};
class Derived:public Base
{
public:
	Derived(int a=4):Base(a)
	{
		printf("C %d ",m_a);
	}
	~Derived()
	{
		printf("D %d ",m_a);
	}
};
int main(void)
{
	Base *aa,bb;
	aa = new Derived;
	delete aa;
	return 0;
}

5、

class Base
{
public:
	int m_a,m_b;
	Base(int a = 2,int b = 5):m_a(a),m_b(b)  {  }
	int func_a()
	{
		return m_a - m_b;
	}
	virtual int func_b()
	{
		return m_a + m_b;
	}
};
class Derived:public Base
{
public:
	Derived(int a = 4, int b = 7):Base(a, b)  {  }
	virtual int func_a()
	{
		return m_b + m_a;
	}
	int func_b()
	{
		return m_b - m_a;
	}
};
int main(void)
{
	Base *aa, *bb;
	aa = new Base(4, 7);
	bb = new Derived(3, 5);
	printf("%d %d %d %d\n",aa->func_a(), aa->func_b(), bb->func_a(), bb->func_b());
	delete aa;
	delete bb;
	return 0;
}

6、

struct SC
{
	int a;
	int b;
	int c;
};
struct SD
{
	int a;
	int b;
	int c;
	int d;
};
int main(void)
{
	struct SC c1[] = {{3},{4},{5},{6}};
	struct SD *c2 = (struct SD*)c1 + 1;
	printf("%d %d %d %d\n",c2->a,c2->b,c2->c,c2->d);
	return 0;
}

7、

int func(int n)
{
	int k = 1;
	if(n > 0)
	{
		k += func(--n);
		printf("%d ", n);
		k += func(--n);
	}
	return k;
}

int main(void)
{
	int a = 3;
	printf("%d\n",func(a));
	return 0;
}

答案:

1、  4   20

2、 C 11 D 4 A 4 B 9 E 10 F 9

3、 3  5  10  18

4、 A 2 A 4 C 4 D 4 B 4  B 2

5、 -3 11 -2 2

6、 0  0  5  0

7、  0  1  2  0  9


编程题:
1、函数checkstr判断一字符串是不是对称的。其中msg为输入的字符串,对称返回0,不对称返回-1,实现该函数。
int checkstr(const char *msg);

int checkstr(const char *msg)
{
	int len = strlen(msg);
	int i, j;
	for(i = 0,j = len-1; i <= j; i++,j--)
	{
		if(msg[i] != msg[j])
			break;
	}
	if(i>j)
		return 0;
	else
		return -1;
}
2、给出一个单向链表的头指针,输出该链表中倒数第K个节点的指针,链表的倒数第0个节点为链表的尾节点(尾节点的next成员为NULL)
typedef struct Node
{
         struct Node *next;
}NODE;

NODE* findnode(NODE *head,unsigned int k);

思路:在遍历时维持两个指针,第一个指针从链表的头指针开始遍历,在第k-1步之前,第二个指针p保持不动;
在第k-1步开始,第二个指针p也开始从链表的头指针开始遍历。由于两个指针的距离保持在k-1,当第一个(走在前面的)指针pcur到达链表的尾结点时,第二个指针指针p正好是倒数第k个结点。
这种思路只需要遍历链表一次。对于很长的链表,只需要把每个结点从硬盘导入到内存一次。因此这一方法的时间效率比较高。

typedef struct Node
{
	struct Node *next;
}NODE;

NODE* findnode(NODE *head, unsigned int k)
{
	if(head==NULL)
		return NULL;
	NODE *p, *pcur;
	pcur = head;
	for(unsigned int i = 0; i < k; i++)
	{
		if(pcur->next != NULL)     //在第k-1步之前,第二个指针p保持不动
			pcur = pcur->next;
		else
			return NULL;      //k比链表中节点的数目要大,找不到倒数第k个节点,直接返回空
	}
	p = head;
	while(pcur->next)
	{
		pcur = pcur->next;
		p = p->next;
	}
	return p;
}

简答题:
1、简述动态链接库DLL和静态链接库lib的差别。
2、请简述MFC中的窗口收到WM_PAINT消息是如何处理的,什么情况下会产生WM_PAINT消息。
3、请简述Critical Section 、Mutex、Semaphore的功能和差别
4、简述多线程程序对比单线程程序的优点和缺点。

大华笔试题 立即下载

相关推荐

大华2013校园招聘笔试题

大华 2013校园招聘 笔试题 C++/MFC 研发

大华测试笔试题_内部消息:今年国内笔试题库大换血!

国内秋招“金九银十”,正在如火如荼地进行截止目前,国内已有500+企业开启秋招!国内券商以中金公司为首四大、快消名企宝洁玛氏等网申正在进行中网申后,大家面对的首要难关就是网测笔试而且80%的公司网测题都在网申后立即触发,作答时间仅48小时时间紧难度大,很多小伙伴都为它挠秃了头12020海归秋招,笔试也太难了吧!不少公司为了降低HR成本,从网测开始就严格把关,启用游戏题、加大网测难度,无所...

weixin_30636449的博客 1518

大华2015校招笔试题

大华2015 ,杭州校招笔试题,要得同学别嫌分高啊,让我也好赚点。

2022年浙江大华编程题

2022年浙江大华编程题

u013098139的博客 862

《广告核心指标驱动的AI投放系统:从数据洞察到智能决策的全链路优化》

本方案通过构建广告核心指标驱动的AI投放系统,实现从数据采集到智能决策的全链路自动化。

专注Java领域与微服务架构,热爱人工智能与深度学习 1066

MCU启动流程详解

在MCU启动后,系统从flash主存储区开始执行,先将0x08000000地址存放的堆栈栈顶指针赋给SP寄存器,将0x08000004地址存放的Reset_Handler复位向量地址赋给PC寄存器跳转执行系统复位,期间执行System_Initializes函数配置系统时钟,重定位向量表,执行MDK自带库函数__main将RW、ZI数据段从Flash加载到RAM,并跳转至_rt_entry进行Stack和Heap的初始化,最后跳转到熟悉的main函数。

weixin_50827397的博客 1505

2021大华笔试

笔试没有监控,让我误以为是测评。。。 1、关于Verilog说法错误的是 B always模块内部被赋值的信号必须是reg generate描述的语句不可以被综合 reg型定义的信号不一定都被综合成触发器 当对不同时钟域之间设置false path,工具忽略对该时钟之间的路径进行分析 2、关于综合描述错误的是 D 综合就是把抽象设计中的一种表示转换成另一种表示的过程 综合就是将电路的高级语言转换成低级的,可与FPGA/CPLD相映射的功能网表文件 为实现系统的速度、面积、性能的要求,需要对

SmartCar的博客 5802

AMBA VIP基础使用方式(AXI)

AXI环境配置 1)基础配置 作为master或者slave使用时,对应的is_active = 1 只作为i监测(monitor)使用时,对应slave_cfg的is_active = 0(对应端口连接也有所区别) class smu_axi_cfg extends svt_axi_system_configuration; `uvm_object_utils(smu_aix_cfg) function new(string name="smu_axi_cfg); super.new(n..

qq_37573794的博客 7984

浙江大华2011 10 10校园招聘会笔试题

浙江大华2011 10 10校园招聘会笔试题

fguihbfg的博客 308

关于AD中如何绘制原理图及其封装

AD中如何绘制原理图及其封装 题记:这是一个比较基础的知识,之所以我打算写一篇这样的笔记,主要是因为在日常生活中,我极少绘制特殊模块或芯片原理图及其封装。久而久之就忘记咋画了,有时需要画封装的时候又想不起来,网上的资料虽然一堆堆的,但往往只是仅原理图的绘制,或者是仅封装的绘制。为此我写一篇这样的笔记,记录绘制原理图及其封装的一条龙服务,感觉这对我而言尤为重要。 本文分为三大板块,依次是原理图的绘制、封装的绘制、二者的联立 第一板块——原理图的绘制 原理图的建立 第二板块——封装的绘制 第三板块——二者的

weixin_51130221的博客 7万+

TI MSPM0G3507 循迹小车强制寻黑线代码一

一个基于MSPM0微控制器的循迹小车控制系统。系统通过8路循迹传感器检测黑线位置偏差,使用PID算法计算电机控制量。主程序初始化中断、PWM等外设,在按键触发后进入循迹模式。传感器数据处理函数根据检测到的黑线位置返回偏差值(-7到7),PID控制器根据偏差调整左右电机速度。系统还包含限幅处理、中断服务等模块,实现稳定的自动循迹功能。代码结构清晰,展示了嵌入式系统中传感器数据处理、电机控制和PID算法的典型实现方式。

雾削木的优快云博客 1854

浙江绿盟科技2011.10.14校园招聘会笔试题

1、以下哪些协议不是应用层通信协议? A、HTTP、TELNET B、FTP、SMTP C、SNMP、NBNS D、ICMP、ARP 2、Ping命令是使用以下哪个协议实现的() A、UDP B、ARP C、IGMP D、ICMP E、SMTP ICMP(Internet Control Message Protocol )网际控制报文协议的一个重要应用就是分组网间探测Ping,用来测试两...

yuanlanjun 944

基于ADMM的TV正则化最小化稀疏实现图像重建

ADMM算法是一种求解带有约束条件的优化问题的有效方法,它可以将原问题分解成两个子问题,然后交替求解这两个子问题,直到收敛。为了解决这些问题,研究人员提出了许多图像重建方法,其中一种常用的方法是基于正则化的方法。在图像重建中,TV正则化是一种比较常用的正则化方法,可以有效地降低图像的噪声,并保持图像细节特征。通过本文的介绍和源代码的演示,我们可以看出基于ADMM的TV正则化最小化稀疏实现图像重建的方法是一种简单、高效、有效的图像重建方法,能够在一定程度上提高图像质量,对于实际应用具有一定的参考意义。

学习使你进步。 1761
上一篇: 淘宝2011.9.23校园招聘会面试题
下一篇: 浙江绿盟科技2011.10.14校园招聘会笔试题
hackbuteer1
博客等级 码龄15年 1万+粉丝 251原创
评论 12
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值