c#程序设计

  • 格式:docx
  • 大小:25.13 KB
  • 文档页数:5

二、填空题(本题总计30分,每空1.5分)A卷 1. 在C#中,进行注释有两种方法:使用”//”和使用”/* */”符号对,其 中只能进行单行注释的是//。

2. 语句int a=2;int b=5;int c=a>b?a:b;运行之后c的值为5。 3. 如下代码:int[] a={1,2,3,4,5};则a[2]的值为3,a[4]=a[a[2]];a[4]的值为4。 4. 面向对象的程序设计三个基本特征继承、封装、多态。 5. C#程序中语句执行的顺序包括4种基本控制结构:顺序结构、选择结构、循环结构、和异常处理逻辑结构。

6. 在声明和初始化变量时,在变量类型的前面加上关键字const,就可以把该变量指定为一个常量。

7. 描述”10 10 & x<=20。 8. 类成员默认的访问修饰符为private。 9. C#提供了4种不同的循环机制for循环、while循环、foreach循环和do…while循环,在满足某个条件之前,可以重复执行代码块。

10. int a=0;int b=100;运行a=b++;之后,a的值为__100____,b的值为101。 11. 当类实例化时首先执行的是构造函数;当实例从内存中销毁前最后执行的是析构函数。 二、填空题(本题总计30分,每空1.5分)B卷

1.在C#中,进行注释有两种方法:使用”//”和使用”/* */”符号对其中可以

进行多行注释的是/* */。

2.语句int a=4>5?1:2;运行之后a的值为2。 3.如下代码:int[] a={1,2,3,4,5};则a[2]的值为3,a[4]=a[a[2]];a[4]的值为4。 4.面向对象的程序设计三个基本特征继承、封装、多态、。 5.C#提供了4种不同的循环机制for循环、while循环、foresch循环和do…while循环,在满足某个条件之前,可以重复执行代码块。

6.将圆周率声明一个常量PI,声明语句为:const double PI=3.14;(填上声明常量的关键字)

7.描述”10 10 & x<=20 。 8.C#程序中语句执行的顺序包括4种基本控制结构:顺序结构、选择结构、循环结构、和异常处理逻辑结构。

9.类成员默认的访问修饰符为private。 10.int a=0;int b=100;运行a=++b;之后,a的值为__101__,b的值为101。 11.当类实例化时首先执行的是构造函数;当实例从内存中销毁前最后执行的是析构函数。 三、判断题(本题总计20分,每小题1分)A卷

1.+、-、*、/、%、++、--均属于二元运算符。(x) 2.在使用变量之前必须先声明类型。 (√) 3.若方法的名字相同、参数相同,而方法的返回值类型不同,则可以实现方法的重载。(x) 4.在C# 编程环境中,常量的值可以在代码中被修改。(x) 5.构造函数和方法都可以进行重载。(√) 6.数组元素的访问是从1开始,到Length结束。(x) 7.C#语言中代码不区分字母的大小写。(x) 8.在结构化异常处理语try catch finally中,finally块的内容可以执行也可以不执行(x) 9.有定义:int [ ] a=new int[5]{1,3,5,7,9}; 则a[3]的值为7(√) 10.z=x>y?x:y的含义是获取x和y中的较大值并且赋给z(√) 11.一个数组的元素可以是多种类型的数据。(√) 12.C#程序的执行是从第一个方法开始,到Main方法结束。(x) 13.在C#中,装箱操作是将值类型转化成引用类型。 (√) 14.在C#中,声明一个变量 int abc,不赋值直接使用,它将获得默认值1。 (x) 15.一切类的基类是object类,并且可以直接继承它。 (√) 16.在同一行上可以书写多条语句,每条语句间用分号分隔。(√) 17.在带有“||”操作符的语句中,如果其中一个或两个条件都为真,则结果为真(√) 18.下列语句是否正确:for(int i=0 , i<10 , i++) Console.WriteLine(i); (x) 19.if语句后面的表达式可以是任意表达式。 (x) 20.构造函数的名称与类名称相同。(√) 三、判断题(本题总计20分,每小题1分)B卷 21.+、-、*、/、%、++、--均属于二元运算符。 (x) 22.布尔型变量可以赋值为0或1。 (x) 23.在控制台应用程序中,若想从键盘上输入数据,可以使用Console.Read()和Console.ReadLine()方法。 (x) 24.在C# 编程环境中,常量的值可以在代码中被修改。(x) 25.数组元素的访问是从1开始,到Length结束。 (x) 26.构造函数和方法都可以进行重载。 (√) 27.C#语言中代码区分字母的大小写。 (√) 28.一个数组的元素可以是多种类型的数据。(√) 29.z=x>y?x:y的含义是获取x和y中的较大值并且赋给z (√) 30.有定义:int [ ] a=new int[5]{1,3,5,7,9}; 则a[3]的值为7。(√) 31.在结构化异常处理语句try catch finally中,finally块的内容可以执行也可以不执行。(x) 32.Main方法的返回值类型必须是void 的类型。 (x) 33.在C#中,声明一个变量 int abc,不赋值直接使用,它将获得默认值1。(x) 34.C#程序的执行是从第一个方法开始,到Main方法结束。(x) 35.C#源程序文件一般用.cs作为扩展名。 (√) 36.在同一行上可以书写多条语句,每条语句间用分号分隔。(√) 37.在带有“&&”操作符的语句中,只有两个条件都为真,结果才为真。 (√) 38.下列语句是否正确:for(int i=0 , i<10 , i++) Console.WriteLine(i); (√) 39.if语句后面的表达式可以是任意表达式。 (x) 40.构造函数的名称与类名称相同。 (√) 四、简答题(本题总计10分)

1. 简述什么是装箱,什么是拆箱并举例说明。(4分) 答:装箱转换是指将一个值类型隐式或显示地转换成一个引用类型,或把这个值类型转换成一个被该值类型应用的接口类型。 拆箱转换是指将一个对象显式地转换成一个值类型,或是将一个接口类型显式地转换成一个执行该接口的值类型。 举例: int 1 =123; object obj1 =1; object obj2 =(object)i; i=456; int j = (int)obj1; Console.WriteLine(“The value-type value(i) ={0}”,i); Console.WriteLine(“The value-type value(j)={0}”,j); Console.WriteLine(“The value-type value(obj1)={0}”,obj1); Console.WriteLine(“The value-type value(obj2)={0}”,obj2); Console.ReadKey(); 2. 简述你对面向对象程序设计的理解(6分) 答:面向对象的程序设计具有封装,继承,多态三个基本形态,可以大大增加程序的可靠性,代码的可重用性和程序的可维护性,从而提高程序开发效率。

五、程序填空题(每空2分,本题总计20分)A卷 1.利用for循环求1~100所有偶数的和;将下面横线上的程序补充完整。(6分)

class Program { static void Main(string[] args) { int sumEven = 0; for (i=2; i <= 100;i+=2) { sumEven+=i } Console.WriteLine(“1~100所有偶数的和为{0}”,sumEven); Console.ReadKey(); } } 2.定义长度为5的数据类型为int的一维数组,并求得5个数的和,平均值,5个数中最大的数,将下面横线上的程序补充完整。(8分)

static void Main() { int[] arr= new int[5]{1,2,3,4,5}; //声明有5个整数的数组 int sumArr=0; //声明变量sumArr用于保存数组的和 int avgArr=0; //声明变量avgArr用于保存数组的平均数 int maxArr=arr[0]; //声明变量maxArr用于保存数组最大的数,默认值为数组第一个数为最大 for (i = 0; i { sumArr+=arr [i]; //统计数组的和 if (arr[i] > maxArr) { maxArr =arr[i]; } } avgArr = snmArr / 4; //求数组的平均数 Console.WriteLine("数组的和={0},数组的平均数={1},数组最大的数={2}", sumArr ,avgArr,maxArr);

} 3.写出下列程序运行之后a的值为:1;b的值为:3;c的值为3。(6分)

static void Main(string[] args) { int a = 2,b = 1,c = 3; a--; b++; b=a > b ? b : c; c=(a < b ? a : b) < c ? b : a) } 10. 分手总要在下雨天

五、程序填空题(每空2分,本题总计20分)B卷 1.利用for循环求1~100所有奇数的和;将下面横线上的程序补充完整。(6分)

class Program { static void Main(string[] args) { int sumOdd = 0; for (i = 1; i <= 100;i +_=2); { sumOdd_+=i; } Console.WriteLine(“1~100所有奇数的和为{0}”, sumOdd); Console.ReadKey(); } }