1、C程序设计教程期末复习题及答案C程序设计教程期末复习题及答案习 题 1 一、 选择题 1(在C#中 B 都是对象。 A 任何类型 B 任何事物 C 任何代码 D 任何技术 2(对象包含数据和 A 的方法。 A 在该数据上工作 B 调用 C 函数调用 D 传递参数 3(一个类是 D 的蓝本。 A 数据集合 B 函数集合 C 方法集合 D 给定功能集合 4(.NET构架包含公用语言运行时期和 B 。 5(.NET的核心是 A 。 A CLR B Windows2000 C DNA D 分解平台 6(C#程序以 B 扩展名保存编写的程序。 A .CS B .PS C .CSS D .SC B 的命名
2、空间。 7(System是 A 存储系统类 B 控制台类 C I/O操作 D 新项目 8(namespace用于声明 B 。 A 新项目 B 一个命名空间 C 类与方法 D 指令 9(每个C#程序必须有一个 D 方法。 A 类方法 B 构造方法 C Main D 重载方法 二、 问答题 1. 面向对象编程的三大原则是什么, 答:封装、继承和多态性。 2. 封装是什么, 答:封装是用于隐藏对象实际的制作细节。 3. 继承是什么, 答:继承是在建立新的特定对象时,可以使用现有对象的功能性。 4. 多态性是什么, 答:多态性是程序代码能够依据实际对象所需而进行不同的行为。 5. .NET的核心构件包
3、括哪些, 答:(1).NET构造块服务或有计划的访问某些服务。 (2)将在新的Internet设备上运行的.NET设备软件。 (3).NET用户经验。 6. CLR的作用是什么, 答:CLR是.NET的核心,它是一个运行时期环境,在该环境中,以不同语言编写的应用程序均能始终运行。 三、 编程题 使用.NET代码编辑器编写一个C#应用程序,以在屏幕打印出: C# is the Component-oriented language in C and C+ family of language. 要求: (1) 使用using System命名空间,即定位System命名空间的Console类。
4、(2) 不使用using System命名空间,即System命名空间的Console类。 (3) 使用using指令的别名,即使用using创建using的别名。 答案: (1) /Example1.cs Using System; Class Example1 Public static void Main() Console.Write(“C# is the Component-oriented language ”); Console.WriteLine(“in C and C+ family of language.”); (2) /Example2.cs Class Example
5、1 Public static void Main() System.Console.Write(“C# is component-oriented language”); System.Console.WriteLine(“in C and C+ family language.”); (3) Example3.cs Using output=System.Console; Class Example1 Public static void Main() Output.Write(“C# is component-oriented language”); 习题2 一、 选择题 1(C#的数据
6、类型有 A 和 C 两种。 A 值类型 B 调用类型 C 引用类型 D 关系类型 2(C#的值类型包括 A 、 B 和 D 三种。 A 枚举 B 基本类型 C 整形 D 结构 E浮点型 F 字符型 3(C#的引用类型包括 A 、 B 、 C 、 F 、 G 和 H 六种。 A string B object C 类 D float E char F 数组G 代表 H 接口 4(装箱是把值类型转换到 B 类型。 A 数组 B 引用 C char D string 5(拆箱是引用类型返回到 C 类型。 A string B char C 值 D 数组 6( A 类型是所有类型的根。 A Syste
7、m.Object B object C string D System.Int32 7(从派生类到基类对象的转换是 B 类型转换。 A 显示 B 隐式 C 自动 D 专向 8(从基类到派生类对象的转换是 D 类型转换。 A 隐式 B 自动 C专向 D 显示 9(强制转换对象可以使用 B 关键字实现。 A is B as C this D object 10(命名空间用于定义 A 的作用域。 A 应用程序 B 有关类型 C 多重源代码 D 层次结构 11(using关键字用于 B 命名空间中的Console对象。 A Console B System C Object D Int32 二、填空题
8、 1(下列程序的运行结果是 99.44 。 /Exam1.cs using System; class Using public static void Main() int i=918; float f=10.25f; short sh=10; double d=11.19; Console.WriteLine(i+f+sh+d); 2(下列程序的运行结果是 25.5 。 /Exam2.cs using System; class Using public static void Main() int i=5; float f=5.1f; Console.WriteLine(i*f); 二、
9、 编程题 21( 已知a=1,b=2,c=3,x=2,计算y=ax+bx+c之值。 2( 已知圆的半径Radius=2.5,计算圆的面积。(PI=3.14159) 要求: (1) 使用基本方法; (2) 使用装箱与拆箱; (3) 输出以double,float,int,decimal,short表示; (4) 使用object类与类型转换; (5) 使用派生类与as。 答案: 1( 方案一: /YValue.cs using System; class Using public static void Main() int a=1,b=2,c=3,x=2,y; y=(a*x+b)*x+c; C
10、onsole.WriteLine(y=0,y); 方案二: /YValue1.cs using System; class Using public static void Main() int a=1,b=2,c=3,x=2; Console.WriteLine(y=0,(a*x+b)*x+c); 2( (1)使用基本方法 方案一: /CircleAreaApp.cs using System; class CircleAreaApp public static void Main() double Radius=2.5,Area; Area=3.14159*Radius*Radius; C
11、onsole.WriteLine(Area=0,Area); 方案二: /CircleAreaApp1.cs using System; class CircleAreaApp public static void Main() double Radius=2.5; Console.WriteLine(Area=0,3.14159*Radius*Radius); (2)使用装箱与拆箱 /CircleAreaApp2.cs using System; class CircleAreaApp public static void Main() double Radius=2.5; double A
12、rea=3.14159*Radius*Radius; Console.WriteLine(Area=0,Area); object obj=Area; Console.WriteLine(Area=0,(double)obj); (3)输出以double,float,int,decimal,short表示 /CircleAreaApp3.cs using System; class CircleAreaApp public static void Main() double Radius=2.5; double Area=3.14159*Radius*Radius; Console.Write
13、Line(Area=0,Area); Console.WriteLine(Area=0,(float)Area); Console.WriteLine(Area=0,(int)Area); Console.WriteLine(Area=0,(decimal)Area); Console.WriteLine(Area=0,(short)Area); (4)使用object类与类型转换 /CircleAreaApp4.cs using System; class Circle public double Radius=2.5; class CircleAreaAPP public static v
14、oid Main() Circle cir=new Circle(); double Area=3.14159*cir.Radius*cir.Radius; Console.WriteLine(Area=0,Area); Console.WriteLine(Area=0,(float)Area); object obj=(float)Area; Console.WriteLine(Area=0,(float)obj); (5)使用派生类与as /CircleAreaApp5.cs using System; class Circle class CircleAreaAPP:Circle pub
15、lic static void Main() double Radius=2.5; double Area=3.14159*Radius*Radius; Console.WriteLine(Area=0,Area); Console.WriteLine(Area=0,(float)Area); object obj=(float)Area; Console.WriteLine(Area=0,(float)obj); Circle cir=new Circle(); Console.WriteLine(cir=0,cir=null?null:cir.ToString(); CircleAreaA
16、PP cirA=new CircleAreaAPP(); cirA=cir as CircleAreaAPP; Console.WriteLine(cirA=0,cirA=null?null:cirA.ToString(); 习题3 一、 选择题 1(字符串的输入使用 B 方法。 A) Cosole.Read() B) Cosole.ReadLine() C) Cosole.Write() D) Cosole.In.read() 2(用于格式化输出十进制数的符号是 C 。 A) C B) E C) D D) G E) N F) X 3(用于格式化输出浮点数的符号是 D 。 A) C B) D
17、C) G D) F E) N F) X 4(用于格式完整日期/时间模式(长时间)的符号是 A 。 A) D B) F C) G D) M E) R F) S 5(用于格式完整日期/时间模式(短时间)的符号是 C 。 A) D B) f C) g D) d E) F F) G 二、编程题 1(从键盘输入一个小写字母,然后输出所输入的小写字母后其对应单代码值。 2(从键盘输入两个浮点数,然后输出这两个数相加的结果(要求小数后取4位)。 3(从键盘输入年、月、日的数值,然后用完整的日期事件格式化输出。 答案: 1( /CharValue.cs using System; public class C
18、harValue public static void Main() Console.Write(Enter an char:); char ch = char.Parse(Console.ReadLine(); /or char ch=(char)Console.Readline(); Console.WriteLine(ch); Console.WriteLine(int)ch); 2( /TwoFloatAddition.cs using System; public class TwoFloatAddition public static void Main() Console.Wri
19、te(Enter a float:); float f1= float.Parse(Console.ReadLine(); Console.Write(Enter a float:); float f2 = float.Parse(Console.ReadLine(); Console.WriteLine(Result of addition for two float is: 0:F4,f1+f2); 3( /DateTimeFormat.cs using System; using System.Globalization; public class DateTimeFormat publ
20、ic static void Main(String args) Console.Write(Enter year month day: ); string s = Console.ReadLine(); DateTime s1 = DateTime.Parse(s); Console.WriteLine(d 0:d,s1); Console.WriteLine(D 0:D, s1); Console.WriteLine(f 0:f, s1); Console.WriteLine(F 0:F, s1); Console.WriteLine(g 0:g, s1); Console.WriteLi
21、ne(G 0:G, s1); Console.WriteLine(m 0:m, s1); Console.WriteLine(M 0:M, s1); Console.WriteLine(r 0:r, s1); Console.WriteLine(R 0:R, s1); Console.WriteLine(s 0:s, s1); 习题4 1(以下运算符的运算符优先级, D 最高, E 最低。 A) + B) C) | D) () E) | F) + 2(以下运算符中, A 是三目运算符。 A) ?: B) - C) = D) = 3(在堆栈上创建对象和调用构造函数时,通常使用 B 关键字。 A)
22、 typeof B) new C) as D) is 4( A 用于获取系统的System.Type类型。 A) typeof B) new C) sizeof D) is 二、写出下列程序执行结果。 1(运行结果 。 /Increment1.cs using System; public class Increment1 public static void Main() int i1=1993,i2=11,i3=19; Console.WriteLine(i1=0,i2=1,i2=2,i1,i2,i3); i1=i3; Console.WriteLine(i1=0,i2=1,i2=2,i1
23、,i2,i3); i3+=i2; Console.WriteLine(i1=0,i2=1,i2=2,i1,i2,i3); i1=i2+i3; Console.WriteLine(i1=0,i2=1,i2=2,i1,i2,i3); i1+; +i2;i3=i1+ + +i2; .WriteLine(i1=0,i2=1,i2=2,i1,i2,i3); Console 2(运行结果: 。 /Increment2.cs using System; public class Increment2 public static void Main() int a,b; a = b = 1; b = a /
24、+b; Console.WriteLine(a=0 b=1,a,b); b = a+ - 1; Console.WriteLine(a=0 b=1, a, b); b += -a+ + +b; Console.WriteLine(a=0 b=1, a, b); Console.WriteLine(b=0,b);*/ 3(运行结果: 。 /Increment3.cs using System; public class Increment3 public static void Main() int i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i1
25、2, i13; i1 = i2 = i3 = i4 = i5 = i6 = i7 = i8 = i9 = i10 = i11 = i12 = i13 = 3; Console.WriteLine(- - -i1); Console.WriteLine(- -i1); Console.WriteLine(i2- -i3); Console.WriteLine(i4- -i5); Console.WriteLine(-i6- -i7); Console.WriteLine(i8+/ +i9* -i10); Console.WriteLine(+i11/i12+ * -i13); Console.R
26、ead(); 三、编程题 1(输入两个整数,输出它们(实数除)的商,并输出商的第2位小数位(例如:5/18.0=1.875, 1.875的第二位小数是7)。 232(输入圆球的半径,计算圆球的表面积(4)和体积(r4r/3),其中=3.14159。 3(输入秒数,把它转换为用小时、分、秒表示。例如,输入7278秒,则输出2小时1分18秒。 324(计算x=ab+5ln(1+c) 要求: (1) 输出结果以科学表示法、定点表示法(小数点后保留两位)和普通表示法表示。 (2) 输出结果以整数表示并指明当前工作的日期和时间。 5(计算 答案: 1( /RealDivide.cs using Syst
27、em; public class RealDivide public static void Main() Console.WriteLine(Enter two integers:); string s = Console.ReadLine().Split(); ; int a = int.Parse(s0); int b = int.Parse(s1); float f = 1.0f * a / b; int c=(int)(f*100)%10; Console.WriteLine(Result of real divide is : 0,f); Console.WriteLine(Sec
28、ond place of decimals is : 0,c); 2( /SphereA.cs using System; public class Sphere public static void Main() Console.Write(Enter the radius of sphere: ); string s = Console.ReadLine(); double radius = double.Parse(s); double surfaceArea = 4 * Math.PI * radius * radius; double Volume = 4 * Math.PI * r
29、adius * radius * radius / 3; Console.WriteLine(SurfaceArea=0,surfaceArea); Console.WriteLine(Volume=0,Volume); 3( /HourMinuteSecond.cs using System; public class HourMinuteSecond public static void Main() int hour, minute, second; Console.Write(Enter numbers of second:); string s = Console.ReadLine(); second =
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1