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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

《C#程序设计基础入门教程》习题答案.docx

1、C#程序设计基础入门教程习题答案C#程序设计基础入门教程习题答案第1章 C#开发入门一、填空题1、 .dll、 .exe2、 CLR3、 编译、运行4、 互操作性5、 Console.WriteLine()二、选择题1、C 2、B 3、C 4、A 5、D 三、问答题1、它是一个全新的、集成的、面向对象的开发平台,它以公共语言运行时(Common Language Runtime,简写CLR)为基础,支持多种编程语言。 2、.NET平台是一个环境,而C#只是一门语言,并不是它的一部分。C#语言编写的程序可以在.NET平台上运行。 四、编程题1、参考答案 class Program static

2、void Main(string args) Console.WriteLine(这是我的第一个C#程序!); Console.ReadKey(); 第2章 C#编程基础(上)一、填空题1、 class2、 true和false3、 54、 值数据类型、引用数据类型5、 1、46、 & & | | 7、 08、 单行注释、多行注释、文档注释9、 break10、1000 二、判断题1、错 2、错 3、错 4、对 5、错三、选择题1、AD 2、BCD 3、C 4、C 5、C 6 、A 7、AC 8、AC 9、BD 10、A四、程序分析题1、编译不通过。int值4和b相加时,由于变量b的类型为by

3、te,取值范围没有int类型大,存不下int类型的值,因此编译不通过。2、编译不通过。这是因为y是在最里层的代码块中定义的一个变量,只有在那个代码块中才可使用,在使用y = x;语句时已经超过了y变量的作用域,所以编译无法通过。3、编译不通过。因为switch语句中的每个分支语句之间需要使用break关键字隔开,如果没有break语句就会报错。4、打印结果为: 9 8 7五、问答题1、标识符可以由任意顺序的大小写字母、数字、下划线(_)和符号组成,但标识符不能以数字开头,且不能是C#中的关键字。2、如果使用“&”在表达式之间进行连接,那么无论任何情况,“&”两边的表达式都会参与计算。如果使用“

4、&”进行连接,当“&”左边的表达式为false,则不会执行其右边的表达式。例如定义int x = 2,y = 0; bool b = x 0表达是会发生被0除异常,因为x / y的表达式执行了。而bool b = x 0是不会出现这种异常的,因为x y为false,表达式x / y不会执行。3、相同点: 1、二者都可以多次执行循环体。 2、二者都可以进行循环次数确定的循环操作。 不同点:1、在循环次数不确定的情况下,一般会使用while循环。2、在while循环中,条件表达式中的变量都会定义在while语句的外面,而在for循环中,条件表达式中的变量都会定义在for语句中。六、编程题1、参考答

5、案 public class Test01 public static void Main(string args) int x = 5; if (x % 2 != 0) Console.WriteLine(x是一个奇数); else Console.WriteLine(x是一个偶数); Console.ReadKey(); 2、参考答案 public class Test02 public static void Main(string args) int sum=0; for (int i = 1; i =99; i+) if (i % 2 != 0) sum += i; Console.

6、WriteLine(1-99之间的奇数和为:+sum); Console.ReadKey(); 第3章 C#编程基础(下)一、填空题1、 void2、 方法名相同、方法签名不同3、 自身4、 params5、 逐语句、逐过程6、 帕斯卡命名规范7、 结束条件8、 99、 断点10、6 二、判断题1、对 2、错 3、对 4、对 5、错三、选择题1、AC 2、BC 3、C 4、B 5、B 6 、BD 7、 C 8、A 9、AC 10、A四、程序分析题1、编译不通过,Say()方法没有返回值。2、编译不能通过,在给TestFunc()方法传参时必须加上ref。3、编译不能通过,参数为out类型的方法

7、,必须在方法内对参数赋值。 五、简答题1、方法重载是指:允许在一个类中同名方法的存在,但是方法的参数列表必须不同。实现重载的条件是方法名必须相同,参数类型或个数必须不同。当调用该方法时,根据参数的不同可以产生不同的结果。2、ref参数是用于传递参数的引用,而不是参数的值。out参数则用于将值从方法体内传到方法体。ref参数必须在方法调用前赋值,out参数必须在方法内进行赋值。3、逐语句调试会进入方法的内部调试,单步执行方法体的每一句带代码。逐过程调试就是不会进入方法体内部,而是把方法当做一行代码来执行。六、编程题1、参考答案 class Program public static void M

8、ain(string args) int sum = Func(99); Console.WriteLine(sum = + sum); Console.ReadKey(); public static int Func(int n) int sum = n; if (n 0) return x + 3; else if (x 0) return x * x - 1; else return 0; 3、参考答案class Program public static void Main(string args) int arr = 25, 24, 12, 76, 101, 96, 28 ; Co

9、nsole.Write(冒泡排序前:); PrintArray(arr); /打印数组元素 BubbleSort(arr); /调用排序方法 Console.Write(冒泡排序后:); PrintArray(arr); /打印数组元素 Console.ReadKey(); /定义打印数组的方法 public static void PrintArray(int arr) /循环遍历数组的元素 for (int i = 0; i arr.Length; i+) Console.Write(arri + ); /打印元素和空格 Console.WriteLine(); /定义对数组排序的方法 p

10、ublic static void BubbleSort(int arr) /定义外层循环 for (int i = 0; i arr.Length - 1; i+) /定义内层循环 for (int j = 0; j arrj + 1) /比较相邻元素 /下面的三行代码用于交换两个元素 int temp = arrj; arrj = arrj + 1; arrj + 1 = temp; 第4章 面向对象基础一、填空题1、封装、继承、多态 2、new 3、成员变量、局部变量4、类5、静态的6、模板7、静态方法 类名.方法名8、内部类9、字段 private10、对象初始化器二、判断题1、对 2

11、、对 3、错 4、对 5、错三、选择题1、B 2、D 3、B 4、ABC 5、ABCD 6、ACD 7、ABCD 8、ABCD 9、D 10、D 四、程序分析题1、程序不能编译通过,因为在类A中的成员变量secret用private修饰,所以在类Test1中无法访问。2、程序不能编译通过,因为在静态方法method()中不能访问非静态成员变量x。3、程序能够编译通过,运行的结果为“inner”。五、简答题1、构造方法是类的一个特殊成员,它会在类实例化对象时被自动调用。而普通方法只有在使用的时 候才会被调用。在定义构造方法时要求方法名与类名相同、在方法名的前面没有返回值类型的声 明、在方法中不能

12、使用return语句返回一个值。2、面向对象的三大特性:封装、继承、多态。封装是将对象的特性和行为封装起来,不需要外界只 具体的实现细节,使用时直接调用即可。继承主要用来描述类与类之间的关系,通过继承可以复用已有的代码并在此基础上进行扩展。多态是指同一操作用于不同对象,会产生不同的执行结果。六、编程题1、参考答案class Student private String name; private double grade; public Student() public Student(String name, double grade) this.name = name; this.grad

13、e = grade; public String getName() return name; public void setName(String name) this.name = name; public double getGrade() return grade; public void setGrade(double grade) this.grade = grade; public class Test01 public static void main(String args) Student stu1 = new Student(); stu1.setName(zhangsa

14、n); stu1.setGrade(99); Student stu2 = new Student(lisi, 100); 2、参考答案class SingleExample private static SingleExample instance; private SingleExample() /无参构造方法 public static SingleExample Method() if(instance=null) Instance=new SingleExample(); 第5章 面向对象高级一、填空题1、继承 2、抽象方法、抽象类 3、using4、派生类或子类5、base6、se

15、aled7、new8、Object9、try、catch10、virtual、override二、判断题1、错 2、对 3、错 4、对 5、对三、选择题1、B 2、C 3、ABD 4、ABCD 5、C 6、AC 7、C 8、ACD 9、A 10、B 四、分析题1、不能编译通过,由于Dog和Cat类没有继承关系。无法将cat()隐式转换为Dog()类型。2、不能编译通过,Dog类中的shout()方式是密封的,在BlackDog类中不能重写该方法。3、程序能够编译通过。4、编译不能通过,因为Dog类中没有实现Animal接口中的全部方法。五、简答题1、方法重写是:当子类继承父类中的方法时,父类方

16、法的功能不能满足子类的需求,通过重写父类的方法可以增加或修改相应的功能。实现方法重写的条件是:要求子类的方法名、参数类型和参数个数必须与父类方法相同,而且父类方法必须使用virtual关键字修饰,子类方法必须使用override关键字修 2、多态就是不属于同一个类的多个对象调用相同方法,产生的结果不同。实现多态有三种方式:方法,抽象类,接口。3、抽象类使用abstract关键字,抽象类中可以有抽象方法,也可以有非抽象方法。接口使用interface关键字,接口中所有的方法都是抽象方法。六、编程题1、参考答案class Program static void Main(string args)

17、Student student = new Student(小明,18); Undergraduate degree = new Undergraduate(小刚,28,学士); student.Show(); degree.Show(); Console.ReadKey(); class Student public string Name get; set; public int Age get; set; public Student(string name,int age) this.Name = name; this.Age = age; public void Show() Con

18、sole.WriteLine(姓名:0 年龄:1,Name,Age); class Undergraduate:Student public string Degree get; set; / 调用父类的构造方法 public Undergraduate(string name, int age, string degree):base(name,age) this.Name = name; this.Age = age; this.Degree = degree; public new void Show() Console.WriteLine(姓名:0 年龄:1 学位:2,Name,Age

19、 ,Degree); 2、参考答案 class Program static void Main(string args) Square square = new Square(); Circle circle = new Circle(); Console.WriteLine(正方形的面积为:0,square.Area(2); Console.WriteLine(圆形的面积为: 0,circle.Area(3); Console.ReadKey(); /定义一个接口 interface Shape double Area(double x); /定义一个实现计算面积的抽象方法 /实现接口Sh

20、ape class Square:Shape /计算正方形的面积 public double Area(double x) return x*x; class Circle:Shape /计算圆形的面积 public double Area(double x) return Math.PI*x*x; 第6章 WinForm基础一、填空题1、Form1设计、Form1.cs2、SelectedItem3、Run()4、控制Tick事件触发的频率5、Form1.Designer.cs6、Form1.resx7、Program.cs8、Control9、Load10、ExpandAll()二、判断题

21、1、对 2、对 3、对 4、对 5、对三、选择题1、D 2、D 3、B 4、C 5、A 6、A 7、D 8、B 9、B 10、A四、程序分析题 一、1、btnSecond.Visible=false;2、btnSecond.Visible=true; btnFirst.Visible=false;3、btnSecond.Visible=false; btnFirst.Visible=true; 二、 1、string musics = 真的爱你, 无悔这一生 ; for (int i = 0; i musics.Length; i+) cmbShow.Items.Add(musicsi); 2

22、、cmbShow.SelectedIndex = 0; 3、!string.IsNullOrEmpty(txtName.Text) 4、cmbShow.Items.Add(txtName.Text); 5、cmbShow.SelectedIndex = cmbShow.Items.Count - 1; 6、txtName.Text = ; 7、MessageBox.Show(请输入歌曲的名字!);五、简答题1、WinForm项目的文件结构包括五个部分,分别是Properties、引用、App.config、Form1.cs、Program.cs,其中Properties用来设置项目的属性,引用

23、用来设置对其他项目命名空间的引用,App.config用来设置数据库的配置信息,Form1.cs文件用来设置窗体界面以及编写逻辑代码,Program.cs文件用来设置项目运行时的主窗体。2、属性: 1、Name属性在指示代码中用来标识该对象的名称。 2、Text属性用来表示与控件关联的文本。 3、Visible属性用来确定该控件时可见的还是隐藏的。 4、Enabled属性用来指示是否启用该控件 5、Tag属性表示与对象关联的用户定义数据。 事件:1、Load事件在窗体加载时被触发。2、Click事件在单击控件时发生。3、MouseEnter事件在鼠标进入控件的可见部分时发生。4、MouseLe

24、ave事件在鼠标离开控件的可见部分时发生。5、FontChanged事件在控件的Font属性值更改时引发的事件。六、编程题1、运行效果图弹出消息框显示“用户名或密码不能为空!”弹出消息框显示“用户名或密码不正确!”弹出消息框显示“登陆成功!”参考逻辑代码 public partial class FormLogin : Form public FormLogin() InitializeComponent(); private void btnLogin_Click(object sender, EventArgs e) string name = txtName.Text; string p

25、assword = txtPassword.Text; if (string.IsNullOrEmpty(name) | string.IsNullOrEmpty(password) MessageBox.Show(用户名或密码不能为空!); else if (txtName.Text = user & txtPassword.Text = itcast) MessageBox.Show(登陆成功!); else MessageBox.Show(用户名或者密码不正确!); 2、运行效果图显示湖北省下的三个市参考逻辑代码 public partial class FormCity : Form

26、public FormCity() InitializeComponent(); private void Form5_Load(object sender, EventArgs e) cmbProvince.Items.AddRange(new string 河北省, 湖北省 ); cmbProvince.SelectedIndex = 0; private void cmbProvince_SelectedIndexChanged(object sender, EventArgs e) cmbCity.Items.Clear(); if (cmbProvince.SelectedIndex = 0) cmbCity.Tag = 0; cmbCity.Items.AddRange(new string 唐山市, 石家庄市, 邯郸市 ); cmbCity.SelectedIndex = 0; if (cmbProvince.SelectedIndex = 1) cmbCity.Tag = 1; cmbCity.Items.AddRange(new string 武汉市, 荆州市, 十堰市 ); cmbCity.SelectedIndex = 0; 第7章 C#常用类一、填空题1、

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

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