1、C#金雪云课后题参考答案C#教程习题参考答案第一章(1) .NET Framework是平台,Visual Studio.NET是集成开发环境,C#是一种.NET平台下的开发语言(2) 易于掌握、支持跨平台、面向对象、与XML相融合(3) 组织资源、避免命名冲突(4) (5) 第二章上机练习(1) .(2)using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace 上机练习2 class Program static void Main(string args) stri
2、ng myText; int Other = 0; int numLetters = 0; int numDigits = 0; char ch; int index = 0; Console.WriteLine(请输入要分析的字符串); myText = Console.ReadLine().ToUpper(); while (index myText.Length) ch = myTextindex; if (char.IsLetter(ch) numLetters+; else if (char.IsDigit(ch) numDigits+; else Other+; index+; C
3、onsole.WriteLine(字符串分析结果为:); Console.WriteLine(字母有0个, numLetters); Console.WriteLine(数字有0个, numDigits); Console.WriteLine(其他支符有0个, Other); (3) using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace 上机练习3 class Program class Rectangle private double x; private dou
4、ble y; public Rectangle(double x, double y) this.x = x; this.y = y; public double GetArea() return x * y; public double GetZhouChang() return (x + y) * 2; static void Main(string args) double a = 1.5; double b = 2.3; Console.WriteLine(长方形的周长是: + (a + b) * 2); Console.WriteLine(长方形的面积是: + a*b); Recta
5、ngle rt = new Rectangle(1.5, 2.3); Console.WriteLine(长方形的周长是: + rt.GetArea(); Console.WriteLine(长方形的面积是: + rt.GetZhouChang(); (4) using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication1 class Program static void Main(string args) string str = C
6、onsole.ReadLine(); char ch = str.ToCharArray(); /字符串转换为字符数组 /输出转换结果 foreach(char c in ch) Console.WriteLine(0,c); /实现反转 char chtemp = str.ToCharArray(); int longs = ch.GetLength(0); for(int i = 0 ; i = longs-1 ; i+) chtempi = chlongs-i-1; / /使用修改后的字符数组构造新字符串 string str2 = new string(chtemp); Console
7、.WriteLine(str2); Console.ReadLine(); (5) 程序为:using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace 上机练习5 class Program class Employee private int id; public int Id get return id; set id = value; private string name; public string Name get return name; set name
8、= value; private bool marry; public bool Marry get return marry; set marry = value; private decimal salary; public decimal Salary get return salary; set salary = value; public Employee(int id, string name, bool marry, decimal salary) this.id = id; this.name = name; this.marry = marry; this.salary =
9、salary; static void Main(string args) int id; string name; bool marry; decimal salary; Console.WriteLine(请输入员工的工号); id = int.Parse(Console.ReadLine(); Console.WriteLine(请输入员工姓名); name = Console.ReadLine(); Console.WriteLine(请输入员工婚否?(已婚请输入字母“y”;未婚请输入字母“n”); if (Console.ReadLine().ToLower().Equals(y)
10、marry = true; else marry = false; Console.WriteLine(请输入员工工资); salary = Convert.ToDecimal(Console.ReadLine(); Object array = new Object1; array0 = new Employee(id, name, marry, salary); foreach (Employee item in array) Console.WriteLine(该员工的工号为: + item.Id); Console.WriteLine(该员工的姓名为: + item.Name); if
11、 (item.Marry = true) Console.WriteLine(该员工已婚); else Console.WriteLine(该员工未婚); Console.WriteLine(该员工的工资为: + item.Salary); 习题1、选择题(1) BD (2) D (3) ADE (4)ABC (5)ABD 2、填空题(1) -123 (2) delegate (3) 装箱 (4) n (5)堆内存 (6) 隐式转换和显式转换(7) ToCharArray(8) 编译错误:运算符“&”无法应用于“int”和“bool”类型的操作数; True;(9) ()3、简答题(1) 数据
12、存放的位置与使用方式不同。(2) 装箱的过程首先创建一个引用类型的实例,然后将值类型变量的内容复制给该引用类型实例.(3) 变量名必须以字母开头; 变量名只能由字母、数字和下划线组成,而不能包含空格、标点符号、运算符等其他符号; 变量名不能与C#中的关键字名称相同; 变量名不能与C#的库函数名称相同。(4) 小数类型较浮点类型而言,具有更大的精确度,但是数值范围相对小了很多。将浮点类型的数向小数类型的数转化时会产生溢出错误,将小数类型的数向浮点类型的数转化时会造成精确度的损失。因此,两种类型不存在隐式或显式转换。(5) 在需要实例化出一个引用类型的对象时使用。第三章上机练习(1) .(2) 六
13、行杨辉三角(3) 五行杨辉三角(4) using System;class Test public static int max(int a, int b, int c, int d) int tempmax = a; if (tempmax b) tempmax = b; if (tempmax c) tempmax = c; if (tempmax b) tempmin = b; if (tempmin c) tempmin = c; if (tempmin d) tempmin = d; return tempmin; public static void Main() Console.
14、WriteLine(Please input four number:); int x1 = Convert.ToInt32(Console.ReadLine(); int x2 = Convert.ToInt32(Console.ReadLine(); int x3 = Convert.ToInt32(Console.ReadLine(); int x4 = Convert.ToInt32(Console.ReadLine(); Console.WriteLine(The Max Number is :0, max(x1, x2, x3, x4); Console.WriteLine(The
15、 Min Number is :0, min(x1, x2, x3, x4); Console.ReadLine(); (5) using System;class Test public static int addfor() int sum = 0; for(int i = 0 ; i = 50 ; i+ ) sum += i; return sum; public static int adddo() int sum = 0; int i = 0; do sum += i; i+; while (i = 50); return sum; public static int addwhil
16、e() int sum = 0; int i = 0; while (i = 50) sum += i; i+; return sum; public static void Main() Console.WriteLine(The Sum for is:0,addwhile(); Console.WriteLine(The Sum do is:0, addwhile(); Console.WriteLine(The Sum while is:0, addwhile(); Console.ReadLine(); 习题1、选择题(1) B (2) ACD (3) D (4) D (5) A 2、
17、填空题(1) 顺序、分支、循环(2) break;reuturn;goto;continue(3) 3(4) 集合中元素的类型(5) 在C#语句和表达式的处理过程中激发了某个异常的条件,使得操作无法正常结束,引发异常、抛出异常3、简答题(1) 判断表达式一定要合法(2) 计算表达式的值;与分支进行匹配;执行分支语句;结束。(3) 提高程序的可读性和健壮性(4) Try块的代码是程序中可能出现错误的操作部分。Catch块的代码是用来处理各种错误的部分(可以有多个)。必须正确排列捕获异常的catch子句,范围小的Exception放在前面的catch。即如果Exception之间存在继承关系,就应
18、把子类的Exception放在前面的catch子句中。Finally块的代码用来清理资源或执行要在try块末尾执行的其他操作(可以省略)。且无论是否产生异常,Finally块都会执行第四章上机练习(1) (2) using System;class MainClass public static void Main(string args) int sum = 0; int, , Score = 1, 2 , 3, 4 , 5,6 , 7,8 ; for (int i = 0; i 2; i+) for (int j = 0; j 2; j+) for (int k = 0; k 2; k+)
19、 sum += Scorei, j, k; Console.WriteLine(The sum is :0, sum); Console.ReadLine(); (3)using System;class MainClass public static void Main(string args) int, arr = new int3, 3; int i, j, t, m=0, k=0, flag = 0; for(i = 0 ; i 3 ; i +) for(j=0 ; j 3 ; j +) arri,j = Convert.ToInt32(Console.ReadLine(); /* 求
20、出每一行的最大值,并判断它是否为所在列的最小值 */ for(i=0;i3;i+) t=arri,0; for(j=0;j3;j+) if(t=arri,j) t=arri,j; m=i; k=j; for(i=0;iarri,k) flag=1; /* 鞍点存在,查找是否有多个鞍点 */ if(flag=0) /* 找出鞍点个数并打印出来 */ for(j=0;j3;j+) if(arrm,j=arrm,k) /printf(the saddle point a%d%d= %dn,m,j,amj); Console.WriteLine(The saddle point a01=2n,m,j,
21、arrm,j); else Console.WriteLine(there are no saddle point); Console.ReadLine(); (4) using System;class MainClass public static void Main(string args) int, arr = new int3, 3; int sum = 0; for (int i = 0; i 3; i+) for (int j = 0; j 0) ai = b % 2; b /= 2; i+; j+; Console.WriteLine(The result is :); for
22、 (k = j - 1; k = 0; k-) Console.WriteLine(0, ak); Console.ReadLine(); (6) using System;using System.Collections;using System.Collections.Generic;class friend string name=; string telephone=; string group=; public string Name get return name; set name = value; public string Telephone get return telep
23、hone; set telephone = value; public string Group get return group; set group = value; public friend(string n,string t,string g) name = n; telephone = t; group = g; public friend(string n) name = n; telephone = ; group = ; public void Display() Console.WriteLine(-); Console.WriteLine(姓名:0n,this.Name)
24、; Console.WriteLine(电话:0n,this.telephone); Console.WriteLine(组:0n,this.group); class telephonebook private ArrayList tele; public telephonebook() this.tele = new ArrayList(); public void Add(friend f) this.tele.Add(f); public void Delete(string na) friend temp=null; foreach (friend f in this.tele) i
25、f (friend)f).Name = na) temp = f; if(temp != null) this.tele.Remove(temp); public void Edit(string na) string name, tele, group; Console.WriteLine(请输入修改后的名称:); name = Console.ReadLine(); Console.WriteLine(请输入修改后的电话:); tele = Console.ReadLine(); Console.WriteLine(请输入修改后的组:); group = Console.ReadLine(); this.Delete(na); friend temp = new friend(name, tele, group); this.tele.Add(temp); public friend SearchByName(string na) foreach (friend f in this.tele
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1