.NET 面试题汇总(一) net面试100题及答案
bigegpt 2024-10-13 01:17 7 浏览
1.一列数的规则如下: 1、1、2、3、5、8、13、21、34...... 求第30位数是多少,用递归算法实现。
static void Main(string[] args) { Console.WriteLine(add(30)); } public static int add(int i) { if (i == 1 || i == 2) return 1; else return add(i - 1) + add(i - 2); }
2. override 和Overload(重载)的区别
override 与重载的区别。重载是方法的名称相同。参数或参数类型不同,进行多次重载以适应不同的需要
Override 是进行基类中函数的重写。实现多态。
3.委托是什么?事件和委托的区别
委托:委托是对函数方法的一种封装,事件是一种特殊的委托
4.值类型和引用类型的区别
值类型 分配在内存栈中,引用类型的具体内容分配在内存堆中,引用类型地址分配在栈中
5.ref关键字的作用
写在值类型前面表示 传入值类型的地址,也就是值类型的内容会随之改变
写在引用类型前面表示 传入引用类型在栈上的的实际地址,如果不加此关键字,在方法中修改类型的指向地址将不会起作用
<u>ref关键字表示传入栈的地址,不加ref表示传入栈中某一地址存的具体内容</u>
class Program { static void Main(string[] args) { testc cc = new testc { name="AAAAA" }; testc( cc); //cc的Name属性不会发生变化 } public static void testc( testc m) { m = new testc { name = "BBBBBB" }; } } class testc { public string name { get; set; } public int age { get; set; } }
6.Asp.Net六大对象是什么
- Request-->读取客户端在Web请求期间发送的值
- Response-->封装了页面执行期后返回到Http客户端的输出
- Server-->提供对服务器上的属性和方法的访问
- Application-->用于整个运行期间的状态对象
- Session-->会话期状态保持对象,用于跟踪单一用户的会话
- Cookie-->客户端保持会员信息的一种方法
7.MVC的路由选择是什么?
路由选择功能帮你定义一个URL规则,映射URL到控制器。
8.求以下表达式的值,写出您想到的一种或几种实现方法:1-2+3-4+……+m
if (m % 2 == 0) sum = -(m / 2); else sum = -(m - 1) / 2 + m;
9.CTS、CLS、CLR分别作何解释?
CTS:通用语言系统。CLS:通用语言规范。CLR:公共语言运行库。
10.程序集和命名空间的区别
程序集:物理分组
命名空间:逻辑分组
11.分析以下代码,完成填空
string strTmp = "abcdefg某某某"; int i= System.Text.Encoding.Default.GetBytes(strTmp).Length; int j= strTmp.Length; i=13,j=10 //一个中文占两个字节(byte)
12.try{}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后?
会在return之前执行
13.请说明在.net中常用的几种页面间传递参数的方法,并说出他们的优缺点。
session(viewstate) 简单,但易丢失
application全局
cookie简单,但可能不支持,可能被伪造
inputttype="hidden" 简单,可能被伪造
url参数 简单,显示于地址栏,长度有限
数据库 稳定,安全,但性能相对弱
14. 冒泡算法
int[] array = new int[*]; int temp = 0; for (int i = 0; i < array.Length - 1; i++) { for (int j = i + 1; j < array.Length; j++) { if (array[j] < array[i]) { temp = array[i]; array[i] = array[j]; array[j] = temp; } } }
15. 设计模式六大原则
单一职责
里氏代换(用到子类的地方都可以用父类替代)
依赖倒置(高层模块不依赖于底层模块,二者都应依赖于抽象)
接口隔离原则(客户端不应依赖他不需要的接口)
迪米特法则(一个对象应该对其他对象保持最少了解)
开闭原则(对拓展开放,对修改关闭)
以下是我7月份的部分面试题答案:
1、Int a=4, b=13, c=16, Max=0, Max = a > b ? a:b; Max = c < Max ? c:Max, 求Max的值
Max = a > b Max=13
2、不使用其他变量,交换两个整型a,b的值;
数学运算 a = a + b; b = a - b; a = a - b; 位异或运算 a = a^b; b = a^b; a = a^b;
3、[javascript] ajax请求的时候get和post方式的区别?
使用Get请求时,参数在URL中显示,而使用Post方式,则不会显示出来使用Get请求发送数据量小,Post请求发送数据量大
4、[javascript]var a1=10; var a2=20; alert(“a1+a2=”+a1+a2)的值是什么?
a1+a2=1020
5、[css]中可以让文字在垂直居中和清除浮动两个属性是什么?
清除浮动 clear:both。 文字在垂直居中 text-align: center; vertical-align: middle;
6、[css]display:none与visibility:hidden的区别是什么?
display:none 会完全隐藏元素,不再占据页面空间!visibility:hidden 仅仅是隐藏了元素的显示效果,但是仍然占据页面空间!
7、[sql]现有Employess表,字段birthDay。现在要查找当天过生日,本月和下月过生日的员工。
--当天 select * from Employess where (month(getdate()) = month(birthDay) and day(getdate()) = day(birthDay)) --本月、下月 select * from Employess where month(birthDay) - month(getdate()) in (0,1,-11)
8、[sql]本题用到下面的三个关系表
card (借书卡表) 字段: cno 卡号,name 姓名,class 班级
books (图书表)字段: bno 书号,bname书名,author作者,price单价,quantity
库存册数
borrow (借书记录表)字段: cno 借书卡号,bno书号,rdate 还书日期
1) 找出借书超过5本的读者,输出借书卡号及所借图书册数。
select cno ,count(*) as ”借图书册数” from borrow group by cno having count(*)>5
2) 查询当前借了”计算方法”但没有借”计算方法习题集”的读者,输出其借书卡号,并按卡号降序排序输出
select a.cno from borrow a,books b where a.bno =b.bno andb.bname=N'计算方法'
and not exists( select * from borrow aa,books bb where aa.bno =bb.bno
and bb.bname=N'计算方法习题集' and aa.cno =a.cno) order by a.cno desc
3) 将”co1”班同学所借图书的还期都延长一周
update b set rdate =DATEADD(Day,7,b.rdate) from card a,borrow b
where a.cno =b.cno and a.class=N'C01'
看完本文有收获?请转发分享给更多人!!!如果你有更好的答案,欢迎大家点赞,留言讨论,喜欢这篇文章可以分享给更多人,关注我每天更新分享有关程序员、科技、编程之类的文章!!!爱你们,,么么哒,,让我们一起愉快的玩耍把!!!
相关推荐
- 或者这些Joplin插件也可以帮助你的笔记应用再一次强大
-
写在前面距离上次分享《搭建私有全平台多端同步笔记,群晖NAS自建JoplinServer服务》已过去一段时间,大家是否开始使用起来了呢?如果你和我一样已经使用过Joplin有一段时间了,那或许你也会...
- Three.JS教程4 threejs中的辅助类
-
一、辅助类简介Three.js提供了一些辅助类(Helpers)以帮助我们更容易地调试、可视化场景中的元素。ArrowHelepr:创建箭头辅助器;AxisHelper:创建坐标轴辅助器;BoxH...
- 第2章 还记得点、线、面吗(二)(第二章还能敲钟吗)
-
glbgltf模型(webvrmodel)-gltf模型下载定制,glb模型下载定制,三维项目电商网站在线三维展示,usdz格式,vr模型网,网页VR模型下载,三维模型下载,webgl网页模型下载我...
- 如何检查Linux系统硬件信息?从CPU到显卡,一网打尽!
-
你可能会问:“我为什么要关心硬件信息?”答案很简单:硬件是Linux系统的根基,了解它可以帮你解决很多实际问题。比如:性能调优:知道CPU核心数和内存大小,才能更好地调整程序运行参数。故障排查:系统卡...
- SpriteJS:图形库造轮子的那些事儿
-
从2017年到2020年,我花了大约4年的时间,从零到一,实现了一个可切换WebGL和Canvas2D渲染的,跨平台支持浏览器、SSR、小程序,基于DOM结构和支持响应式的,高...
- 平时积累的FPGA知识点(6)(fpga经典应用100例)
-
平时在FPGA群聊等积累的FPGA知识点,第六期:1万兆网接口,发三十万包,会出现掉几包的情况,为什么?原因:没做时钟约束,万兆网接口的实现,本质上都是高速serdes,用IP的话,IP会自带约束。...
- 芯片逻辑调度框架设计 都需要那些那些软件工具
-
设计芯片逻辑调度框架通常需要使用以下软件工具:1.逻辑设计工具:例如Vivado、Quartus、SynopsysDesignCompiler等,用于设计和实现逻辑电路。2.仿真工具:例如Mo...
- ZYNQ与DSP之间EMIF16通信(正点原子领航者zynq之fpga开发指南v3)
-
本文主要介绍说明XQ6657Z35-EVM高速数据处理评估板ZYNQ与DSP之间EMIF16通信的功能、使用步骤以及各个例程的运行效果。[基于TIKeyStone架构C6000系列TMS320C6...
- 好课推荐:从零开始大战FPGA(从零开始的冒险4399)
-
从零开始大战FPGA引子:本课程为“从零开始大战FPGA”系列课程的基础篇。课程通俗易懂、逻辑性强、示例丰富,课程中尤其强调在设计过程中对“时序”和“逻辑”的把控,以及硬件描述语言与硬件电路相对应的“...
- 业界第一个真正意义上开源100 Gbps NIC Corundum介绍
-
来源:内容由「网络交换FPGA」编译自「FCCM2020」,谢谢。FCCM2020在5月4日开始线上举行,对外免费。我们有幸聆听了其中一个有关100G开源NIC的介绍,我们对该文章进行了翻译,并对其中...
- 高层次综合:解锁FPGA广阔应用的最后一块拼图
-
我们为什么需要高层次综合高层次综合(High-levelSynthesis)简称HLS,指的是将高层次语言描述的逻辑结构,自动转换成低抽象级语言描述的电路模型的过程。所谓的高层次语言,包括C、C++...
- Xilinx文档编号及其内容索引(部分)
-
Xilinx文档的数量非常多。即使全职从事FPGA相关工作,没有几年时间不可能对器件特性、应用、注意事项等等有较为全面的了解。本文记录了我自使用Xilinx系列FPGA以来或精读、或翻阅、或查询过的文...
- Xilinx Vivado联合Modelsim软件仿真
-
引言:Xilinx公司Vivado开发软件自带仿真工具,可以实现一般性能的FPGA软件仿真测试,其测试执行效率以及性能都不如第三方专用仿真软件Modelsim强。本文我们介绍下如何进行Vivado20...
- 体育动画直播是怎么做出来的?从数据到虚拟赛场的科技魔法!
-
你是否见过这样的比赛直播?没有真实球员,却能看梅西带球突破?足球比赛变成动画版,但数据100%真实?电竞比赛用虚拟形象直播,选手操作实时同步?这就是体育动画直播——一种融合实时数据、游戏引擎和AI的...
- Dialogue between CPC and political parties of neighboring countries held in Beijing
-
BEIJING,May26(Xinhua)--TheCommunistPartyofChina(CPC)inDialoguewithPoliticalPartiesof...
- 一周热门
- 最近发表
- 标签列表
-
- mybatiscollection (79)
- mqtt服务器 (88)
- keyerror (78)
- c#map (65)
- resize函数 (64)
- xftp6 (83)
- bt搜索 (75)
- c#var (76)
- mybatis大于等于 (64)
- xcode-select (66)
- mysql授权 (74)
- 下载测试 (70)
- linuxlink (65)
- pythonwget (67)
- androidinclude (65)
- libcrypto.so (74)
- logstashinput (65)
- hadoop端口 (65)
- vue阻止冒泡 (67)
- jquery跨域 (68)
- php写入文件 (73)
- kafkatools (66)
- mysql导出数据库 (66)
- jquery鼠标移入移出 (71)
- 取小数点后两位的函数 (73)