.NET数据类型测试题及答案

1.   值类型与引用类型有什么区别?可空类型 null 可以赋值给那种类型?

值类型在内存中存储的是数值,引用类型在内存中存储的是单元地址,可空类型 null 可以赋值给引用类型。

& && 的区别?

& 位运算符 “位与”   && 逻辑运算符

2.   String s = new String("xyz"); 创建了几个 String Object

两个 ,一个是 xyz, 另一个是指向 ”xyz” 的引用对象 s

short s1 = 1; s1 = s1 + 1; 有什么错 ? short s1 = 1; s1 += 1; 有什么错 ?

第一个存在着一个数值转换问题; short s1 = 1; s1 += 1; 第二个正确

 

3.   C# 中的三元运算符是 ?:

 

6. 当整数 a 赋值给一个 object 对象时,整数 a 将会被 _____? 装箱 / 拆箱)

 

7.float f=-123.567F;

  int i=(int)f;

i 的值现在是 -123

 

8. 什么是装箱和拆箱?代码示例。

从值类型转换到引用类型装箱。从引用类型转换到值类型拆箱。

Float val=3.14f;

Object boxed =val; // 装箱操作

 

Float unboxed=(float)boxed  // 拆箱操作

 

9. 字符串是值类型还是引用类型?怎么判断两个字符串内容是否相等?

    字符串是引用类型 , 它在内存中存储的是单元地址。用“ = = ”可以 判断两个字符串内容是否相等。

10. CTS CLS CLR 分别作何解释?

CTS :通用语言系统。 CLS :通用语言规范。 CLR :公共语言运行库。

11 .Which of these string definitions will prevent escaping on backslashes in C#?

    1. string s = # /n Test string ;

    2. string s = “’ /n Test string ;

     3. string s = @ /n Test string ;

    4. string s = /n Test string ;

12. a=3,b=5 ,在不用第三方变量的前提下,把 a,b 的值互换

a = a+b;

b = a –b;

a = a- b;

代码部门(节选)

int a=10;

            int b=15;

            Console .WriteLine(" 转换前 a={0},b={1}" ,a,b);

            a=a+b;

            b=a-b;

            a=a-b;

            Console .WriteLine(" 转换后 a={0},b={1}" ,a,b);

            Console .Read();

13. 某一密码仅使用 K L M N O 5 个字母,密码中的单词从左向右排列,密码单词必须遵循如下规则:
1 ) 密码单词的最小长度是两个字母,可以相同,也可以不同
2 K 不可能是单词的第一个字母
3 ) 如果 L 出现,则出现次数不止一次
4 M 不能是最后一个也不能是倒数第二个字母
5 K 出现,则 N 就一定出现
6 O 如果是最后一个字母,则 L 一定出现
 
问题一:下列哪一个字母可以放在 LO 中的 O 后面,形成一个 3 个字母的密码单词?
  A) K
B)L C) M D) N

 
问题二:如果能得到的字母是 K L M ,那么能够形成的两个字母长的密码单词的总数是多少?

 
A)1 B)3 C)6 D 9

 
问题三:下列哪一个是单词密码?
  A) KLLN   B) LOML
C) MLLO D)NMKO

14. 62-63=1 等式不成立,请移动一个数字(不可以移动减号和等于号),使得等式成立,如何移动?

  应该移动 6 ,把他移动成 2 的六次方。

15. (int) 转换和 Convert.ToInt32 转换的区别 ?

     (int) 转换强制转换的只能是数值类型,而 Convert.ToInt32 转换是内容的转换成 int 形式。

16. Const 代表什么意义,使用时应该注意什么问题?
Const 代表的是 常量的声明,常量必须在声明时初始化,在程序运行过程中其值不改变 17. .NET 中所有类的基类是?

     System.Object

18. C #中, string str = null string str = “” 请尽量使用文字或图象说明其中的区别 .( 内存分配空间 )

区别: string str = null 代表是空,在内存中没有分配空间

string str = “”代表空字符串,在内存中分配了空间无任何东西

 

19 . checked 关键字和 unchecked 关键字的作用? is 运算符的作用 as 运算符的作用

    checked 关键字是强制检查数值的溢出 , unchecked 关键字的作用是不检查数值的溢出 is 操作符用于检查变量是否指定的类型 , as 运算符用于转换引用类型

 

20. Console.Read() Console.ReadLine() 的区别?

    Console.Read() 从标准输入流读取下一个字符;

Console.ReadLine() :从标准输入流读取下一行字符;

21. 布尔类型( bool 是否可以与数值之间转换?为什么

不能转换,因为 bool 它只有两种数值 True False.

22. 什么是结构( struct ),请用代码示例。

    结构它是一种数值类型,通常用来封装小型相关变量组

节选部门代码:

Class Struct

{

Book book=new Book()

   book.title=”C# 编程 ”;

   book.price=124.44m;

   Console.writeLine(“{0}/n{1}”,book.title,book.price);

}

  Struct Book // 声明 struct

{

  Pubic string title;

  Pubic decimal price;

}

23. 隐式转换和显示转换的区别?

  隐式转换 : 将低精度数值转换为高精度数值,直接赋值而不用转换。显示转换则反之,它要转制转换,要指名转换的目标数据类型。

24. 堆和栈的区别?

  栈是编译期间就分配好的内存空间,因此你的代码中必须就栈的大小有明确的定义;局部值类型变量、值类型参数等都在栈内存中

  堆是程序运行期间动态分配的内存空间,你可以根据程序的运行情况确定要分配的堆内存的大小。

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值