ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:21.03KB ,
资源ID:23859356      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/23859356.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C#基础题及答案.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C#基础题及答案.docx

1、C#基础题及答案一 简答题1.static有什么用途?(请至少说明两种)2.引用与指针有什么区别?3.描述实时系统的基本特性4.全局变量和局部变量在内存中是否有区别?如果有,是什么区别?5.什么是平衡二叉树?6.堆栈溢出一般是由什么原因导致的?7.什么函数不能声明为虚函数?8.冒泡排序算法的时间复杂度是什么?9.写出float x 与“零值”比较的if语句。10.Internet采用哪种网络协议?该协议的主要层次结构?11.Internet物理地址和IP地址转换采用什么协议?12.IP地址的编码分为哪俩部分?13.用户输入M,N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出。写

2、出C程序。 循环链表,用取余操作做 14.写出判断ABCD四个表达式的是否正确, 若正确, 写出经过表达式中 a的值(3分)int a = 4;(A)a += (a+); (B) a += (+a) ;(C) (a+) += a;(D) (+a) += (a+);a = ?15.某32位系统下, C+程序,请计算sizeof 的值(5分).char str = “char *p = str ;int n = 10;请计算sizeof (str ) = ?(1)sizeof ( p ) = ?(2)sizeof ( n ) = ?(3)void Foo ( char str100)请计算size

3、of( str ) = ?(4)void *p = malloc( 100 );请计算sizeof ( p ) = ?(5)16.头文件中的 ifndef/define/endif 干什么用?17. #include 和 #include “filename.h” 有什么区别?18.在C+ 程序中调用被 C 编译器编译后的函数,为什么要加 extern “C”声明?19. switch()中不允许的数据类型是?20.Void GetMemory(char *p, int num)*p = (char *)malloc(num);void Test(void)char *str = NULL;G

4、etMemory(&str, 100);strcpy(str, hello);printf(str);请问运行Test 函数会有什么样的结果?21. void Test(void)char *str = (char *) malloc(100);strcpy(str, “hello”);free(str);if(str != NULL)strcpy(str, “world”);printf(str);请问运行Test 函数会有什么样的结果?22. char *GetMemory(void)char p = hello world;return p;void Test(void)char *st

5、r = NULL;str = GetMemory();printf(str);23. 编写strcat函数已知strcat函数的原型是char *strcat (char *strDest, const char *strSrc);其中strDest 是目的字符串,strSrc 是源字符串。(1)不调用C+/C 的字符串库函数,请编写函数 strcat(2)strcat能把strSrc 的内容连接到strDest,为什么还要char * 类型的返回值?24.MFC中CString是类型安全类么?25.C+中为什么用模板类。26.CSingleLock是干什么的。27.NEWTEXTMETRIC

6、 是什么。28.程序什么时候应该使用线程,什么时候单线程效率高。29.Windows是内核级线程么。30.Linux有内核级线程么。31.C+中什么数据分配在栈或堆中,New分配数据是在近堆还是远堆中?32.使用线程是如何防止出现大的波峰。33.函数模板与类模板有什么区别?34.一般数据库若出现日志满了,会出现什么情况,是否还能使用?35.如果数据库满了会出现什么情况,是否还能使用?36.SQL Server是否支持行级锁,有什么好处?37.关于内存对齐的问题以及sizof()的输出 38.int i=20, j=10, k=2; k*=i+j; k最后的值是?39.对数据库的一张表进行操作,

7、同时要对另一张表进行操作,如何实现?40.TCP/IP 建立连接的过程?(3-way shake)41.ICMP是什么协议,处于哪一层?42.触发器怎么工作的?43.winsock建立连接的主要实现步骤?44.动态连接库的两种方式?45.IP组播有那些好处?46.软件的开发流程?47.char str = “hello”,sizeof (str ) = _ strlen ( str ) = _48.类和结构的区别?49.简述下虚拟函数的含义?50.类中访问权限private,protested,prublic,可以被何种访问?51.解释下面的含义:int *pTemp = new int (

8、5 );int *pTemp = new int5;二 编程题题目:有n 个人,他们围成一个圈,从第一个人开始数数(第一个人默认为1号,一直到n 号),数1,2,3,当数到3的人则退出这个圈,后面的继续数,一直进行,问到最后是否只剩一个人,如果是,这个人的编号是多少?题目:写一个memcpy函数。题目:写一个双向链表的插入函数。原型如下:struct nodenode *head;node *end;int value;void createnode(node *head, node *end, int val);int main()node *head = NULL;node *end =

9、NULL;createnode(head, end, 1);createnode(head, end, 1);createnode(head, end, 1);return 0;答案111=1. static有什么用途?(请至少说明两种)=对于变量:具有程序生命周期,具有文件作用域对于函数:对于函数中的成员:2.引用与指针有什么区别?=引用是一特别的指针,必须在声明的时候初始化。3.描述实时系统的基本特性=响应快,可靠4.全局变量和局部变量在内存中是否有区别?如果有,是什么区别?=全局变量又分初始化的和未初始化的。 未初始化的一般在.bss段初始化的在.data段,局部变量在函数栈中5.什么是

10、平衡二叉树?=二叉树层数比较平衡6.堆栈溢出一般是由什么原因导致的?=实参缓存数组过大。也可直接改esp7.什么函数不能声明为虚函数?= ?虚函数必须依附于类。这个问题有点NC了吧。8.冒泡排序算法的时间复杂度是什么?= O(N2)9.写出float x 与“零值”比较的if语句。=if( -0.00000001 x & x 0.00000001 )10.Internet采用哪种网络协议?该协议的主要层次结构?= TCP/IP All people seems need to data process Application presentation sessions network tran

11、sform datalink physical11.Internet物理地址和IP地址转换采用什么协议?= arp rarp12.IP地址的编码分为哪俩部分?=网络号,主机号13.用户输入M,N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出。写出C程序。 循环链表,用取余操作做 14.写出判断ABCD四个表达式的是否正确, 若正确, 写出经过表达式中 a的值(3分)int a = 4;(A)a += (a+); (B) a += (+a) ;(C) (a+) += a;(D) (+a) += (a+);a = ? 8 9 8? 不正确15.某32位系统下, C+程序,请计算si

12、zeof 的值(5分).char str = “ char *p = str ;int n = 10;请计算sizeof (str ) = ?(1) /数出长度然后加1sizeof ( p ) = ?(2) / 4sizeof ( n ) = ?(3) / 4void Foo ( char str100)请计算sizeof( str ) = ?(4) / 4void *p = malloc( 100 );请计算sizeof ( p ) = ?(5) / 416.头文件中的 ifndef/define/endif 干什么用? 防止头文件重复包含,条件编译等17. #include 和 #incl

13、ude “filename.h” 有什么区别?寻找路径不同 一个是先在指定的环境变量的目录中找,另一个是先在当前项目文件中找18.在C+ 程序中调用被 C 编译器编译后的函数,为什么要加 extern “C”声明?= 若不加编译器会以C+的函数name mangling 和C的 name mangling不相同19. switch()中不允许的数据类型是?应该是说允许的类型吧,不允许的太多了。只允许整型(enum也算)20.Void GetMemory(char *p, int num)*p = (char *)malloc(num);void Test(void)char *str = NU

14、LL;GetMemory(&str, 100);strcpy(str, hello);printf(str);请问运行Test 函数会有什么样的结果?内存泄漏外加输出的hello(hello后内容不确定)21. void Test(void)char *str = (char *) malloc(100);strcpy(str, “hello”);free(str);if(str != NULL)strcpy(str, “world”);printf(str);请问运行Test 函数会有什么样的结果?输出world (后面内容不确定)22. char *GetMemory(void)char

15、p = hello world;return p;void Test(void)char *str = NULL;str = GetMemory();printf(str);输出hello world23. 编写strcat函数已知strcat函数的原型是char *strcat (char *strDest, const char *strSrc);其中strDest 是目的字符串,strSrc 是源字符串。(1)不调用C+/C 的字符串库函数,请编写函数 strcat(2)strcat能把strSrc 的内容连接到strDest,为什么还要char * 类型的返回值?24.MFC中CStr

16、ing是类型安全类么?=不是25.C+中为什么用模板类。26.CSingleLock是干什么的。27.NEWTEXTMETRIC 是什么。28.程序什么时候应该使用线程,什么时候单线程效率高。29.Windows是内核级线程么。30.Linux有内核级线程么。31.C+中什么数据分配在栈或堆中,New分配数据是在近堆还是远堆中?32.使用线程是如何防止出现大的波峰。33.函数模板与类模板有什么区别?34.一般数据库若出现日志满了,会出现什么情况,是否还能使用?35.如果数据库满了会出现什么情况,是否还能使用?36.SQL Server是否支持行级锁,有什么好处?37.关于内存对齐的问题以及si

17、zof()的输出 38.int i=20, j=10, k=2; k*=i+j; k最后的值是?39.对数据库的一张表进行操作,同时要对另一张表进行操作,如何实现?40.TCP/IP 建立连接的过程?(3-way shake)41.ICMP是什么协议,处于哪一层?42.触发器怎么工作的?43.winsock建立连接的主要实现步骤?44.动态连接库的两种方式?45.IP组播有那些好处?46.软件的开发流程?47.char str = “hello”,sizeof (str ) = _ strlen ( str ) = _48.类和结构的区别?49.简述下虚拟函数的含义?50.类中访问权限priv

18、ate,protested,prublic,可以被何种访问?51.解释下面的含义:int *pTemp = new int ( 5 );int *pTemp = new int5;二 编程题题目:有n 个人,他们围成一个圈,从第一个人开始数数(第一个人默认为1号,一直到n 号),数1,2,3,当数到3的人则退出这个圈,后面的继续数,一直进行,问到最后是否只剩一个人,如果是,这个人的编号是多少?题目:写一个memcpy函数。题目:写一个双向链表的插入函数。原型如下:struct nodenode *head;node *end;int value;void createnode(node *he

19、ad, node *end, int val);int main()node *head = NULL;node *end = NULL;createnode(head, end, 1);createnode(head, end, 1);createnode(head, end, 1);return 0;2. 答案22222222=一 简答题1.static有什么用途?(请至少说明两种)在函数中,一个声明为静态的变量在函数调用的过程中其值不变。在模块中(函数外),一个声明为静态的变量只能由模块中的函数访问,也就是一个本地的全局变量在模块中,一个声明为静态的函数只能由模块内的其他函数调用,这个函

20、数被限制在了声明它的模块的本地范围使用。2.引用与指针有什么区别?引用要初始化,指针可以不用。引用不能初始化为空, 指针可以。引用和指针的自增运算意义不同。引用初始化后不能改变指向的地址,指针可以。sizeof引用得到的是引用指向对象的大小,sizeof指针得到的是指针本身的大小。3.描述实时系统的基本特性在特定的时间完成特定的任务,具有实时性和可靠性。4.全局变量和局部变量在内存中是否有区别?如果有,是什么区别?有区别,全局变量的存储区域是静态存储区,局部变量的存储区域是栈。5.什么是平衡二叉树?左右子树都是平衡二叉树,并且左右子树的深度差值的绝对值不大于1。6.堆栈溢出一般是由什么原因导致

21、的?没有回收垃圾资源。7.什么函数不能声明为虚函数?构造函数。8.冒泡排序算法的时间复杂度是什么?0(n 2)。9.写出float x 与“零值”比较的if语句。if(x 0.00001 & x 0.00001)。10.Internet采用哪种网络协议?该协议的主要层次结构?Tcp/Ip协议,网络层、会话层、表示层、传输层、物理层、数据链层、应用层。11.Internet物理地址和IP地址转换采用什么协议?ARP地址解析协议。12.IP地址的编码分为哪俩部分?主机号和网络号16.头文件中的 ifndef/define/endif 干什么用?预处理,防止头文件被反复包含。17. #include

22、 和 #include “filename.h” 有什么区别?#include搜索的是系统默认目录, #includefilename.h搜索的是本地目录,如果没有则搜索系统默认目录。18.在C+ 程序中调用被 C 编译器编译后的函数,为什么要加 extern “C”声明?C+不能直接调用C函数,因为函数在C+中编译后的函数名在符号库中名字与C中不同,所以使用extern C修饰函数按照C语言的方式编译和连接。19. switch()中不允许的数据类型是?实型。24.MFC中CString是类型安全类么?不是,其他类型的变量可以通过CString中的Format来转换为CString类型。25

23、.C+中为什么用模板类。与类型无关,具有很高的复用性。与平台无关,具有可移植性。可以创建一个动态增长或者减小的数据结构。在编译时而不是运行时检查数据类型,保证了类型的安全。适用基本数据类型。26.CSingleLock是干什么的。一种访问机制,在多线程程序中并发的访问一个资源。27.NEWTEXTMETRIC 是什么。物理字体结构,设置字体的高宽大小。28.程序什么时候应该使用线程,什么时候单线程效率高。耗时的程序中使用多线程,提高程序的响应。多CPU系统使用多线程,提高CPU的使用率。改善程序结构时,一个即长有复杂的进程可以考虑分解为多线程,成为一个独立或者半独立的运行部分,便于程序的理解和

24、修改并发操作时,如C/S中服务端并发响应客户端的请求。其他情况使用单线程。29.Windows是内核级线程么。30.Linux有内核级线程么。31.C+中什么数据分配在栈或堆中,new分配数据是在近堆还是远堆中?局部变量、函数的返回值、函数调用的参数、函数的返回地址存储在栈区。new和malloc申请的内存存储在堆区。32.使用线程是如何防止出现大的波峰。使用线程池,可以提高线程同时调用的效率和限制资源使用的好处,当线程池中的线程达到最大数时,其他线程就会排队等候。33.函数模板与类模板有什么区别?函数模板的实例化是编译程序在处理函数调用时自动完成,类模板的实例化需要程序员在程序中显实指定。3

25、4.一般数据库若出现日志满了,会出现什么情况,是否还能使用?只能进行查询等读操作,不能进行更改、备份等写操作,因为任何操作会记录到数据库的日志中。也就是数据库基本属于不能使用的状态。35.如果数据库满了会出现什么情况,是否还能使用?只能进行查询等读操作,不能进行更改、备份等写操作,因为任何操作会记录到数据库的日志中。也就是数据库基本属于不能使用的状态。36.SQL Server是否支持行级锁,有什么好处?支持,锁机制是为了对并发操作进行控制,对干扰操作进行了封锁,保证了数据的一致性和准确性。行级锁确保用户取得被更新的行到该行进行更新这段时间不会被其他用户所修改。因而行级锁保证了数据的一致性又能提高数据操作的并发性。37.关于内存对齐的问题以及sizof()的输出 内存自动对齐的是为了提高程序的性能,数据结构应该尽量在自然边界上,原因在于处理器访问未对齐的内存需要做两次内存访问,访问对齐的内存只需要访问一次。39.对数据库的一张表进行操作,同时要对另一张表进行操作,如何实现?将多个表的操作放到事物中处理。40.TCP/IP 建立连接的过程?(3-way shake)采用三次握手建立一个连接。第一次握手:建立连接时,客户端发送SYN(ack = j + 1)到服务端,并进入到SYN_SEND状态,等待服务端确认。第二次握手:服务端收到SYN(ack

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1