《实验2 C#语言编程基础.doc》由会员分享,可在线阅读,更多相关《实验2 C#语言编程基础.doc(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、实验二 C#语言编程基础 实验目的l 掌握C#语法的流程控制结构 l 掌握方法的应用l 了解变量的类型 实验内容l 编写闰年判断程序l 编写求1到n的和的程序,要求for、while、dowhile,以及递归方法实现。l 建立一个二维数组,并将数组中的值遍历输出。l 定义一个实现两个数交换的方法。实验步骤为了实现代码的重用,将上述的各个实验内容,定义成不同的方法。判断闰年的方法定义为:IsLeapYear();将求和的方法分别定义为:for_Sum()、while_Sum、do_Sum()、recursion_Sum()。1编写闰年判断程序步骤1:启动Visual Studio 2010。步骤
2、2:创建项目一个控制台项目,命名为“Experiment2”。步骤3:编写IsLeapYear()方法。在static void Main(string args)方法后面输入以下代码:public bool IsLeapYear(int y) if (y % 4 = 0) if (y % 100 != 0) if (y % 400 = 0) return true; else return false; else return true; else return false;步骤4:编辑Main方法调用该函数。在Main方法中输入以下代码:Console.WriteLine(请输入年份:);
3、int year = Convert.ToInt32(Console.ReadLine();while (year != -1) if (IsLeapYear(year) Console.WriteLine(0年是闰年, year); else Console.WriteLine(0年不是闰年, year); Console.WriteLine(请输入年份:); year = Convert.ToInt32(Console.ReadLine();步骤5:生成程序。步骤6:运行程序,依次输入20,200,2000,程序显示如图2.1所示。图2.1 程序运行结果说明:在方法IsLeapYear代码
4、编写过程中,实现多个分支语句的嵌套,else和if的对应关系容易写错,并且else的语句比较简单,因此可以改变代码的编写顺序来提高编写代码的效率,例如对于本例可以按照注释的顺序编写。public bool IsLeapYear(int y) if (y % 4 = 0)/1 if (y % 100 != 0) /4 if (y % 400 = 0)/7 return true;/8 else/9 return false;/10 else /5 return true;/6 else/2 return false; /32求1到n之和程序程序的编写过程与判断闰年的程序类似,因此不再赘述。本处只
5、给出相应方法的代码。/for循环求1到n之和public static int for_Sum(int n) int sum = 0; for (int i = 0; i = n; i+) sum += i; return sum;/while循环求1到n之和public static int while_Sum(int n) int sum = 0; int i = 0; while( i = n) sum += i; i+; return sum;/dowhile循环求1到n之和public static int do_Sum(int n) int sum = 0; int i = 0;
6、do sum += i; i+; while(i=n); return sum;/递归求1到n之和public static int recursion_Sum(int n) if (n = 0) return 0; else return n + recursion_Sum(n - 1);3. 数组遍历步骤1:创建一个项目。步骤2:修改Main方法,在Main方法中添加如下代码:double, values = 1.2, 2.3, 3.4, 4.5,5.6, 6.7, 7.8, 8.9;foreach (double elementValue in values)Console.Write(
7、0 , elementValue);Console.WriteLine();步骤3:执行程序,程序运行结果如图2.2 所示。图2.2运行结果4. 数值交换定义一个实现对两个数交换的方法。然后调用该方法查看执行结果,验证方法调用时传值和引用的区别。步骤1:创建项目步骤2:编写实现交换的方法。为了验证不同参数实现的功能不同,定义两个实现代码完全相同的方法,不同之处在于Swap1参数声明为ref的,而Swap2参数声明为传值的。public static void Swap1 (ref int a, ref int b) int temp; temp = a; a = b; b = temp;pub
8、lic static void Swap1 ( int a, int b) int temp; temp = a; a = b; b = temp;步骤3:编写Main方法,在Main方法中添加如下代码: int a = 1, b = 2;Console.WriteLine(Swap1调用前:a=0tb=1, a, b);Swap1(ref a, ref b);Console.WriteLine(Swap1调用后:a=0tb=1, a, b);a = 1;b = 2;Console.WriteLine(Swap2调用前:a=0tb=1, a, b);Swap2(ref a, ref b);Co
9、nsole.WriteLine(Swap2调用后:a=0tb=1, a, b);步骤4:运行程序。程序的运行结果如图2.3所示。图2.3 数据交换方法运行结果5. 多分支应用让用户输入学位缩写,然后输出用户缩写所代表的全部内容。例如输入B程序输出:您输入的是学士学位。如果输入错误给出正确输入的提示。步骤1:创建项目步骤2:编写Main方法。实现代码如下:static void Main(string args) string de ; do Console.WriteLine(请输入学位缩写:); de = Console.ReadLine(); switch (de) case B: Con
10、sole.WriteLine(您输入的是学士学位的缩写); break; case M: Console.WriteLine(您输入的是硕士学位的缩写); break; case D: Console.WriteLine(您输入的是博士学位的缩写); break; default: Console.WriteLine(您输入的学位缩写错误,请重新输入。); Console.WriteLine(B:学士学位。); Console.WriteLine(M:硕士学位。); Console.WriteLine(D:博士学位。); Console.WriteLine(X:退出程序。); break; while(de!=X);步骤4:运行程序。程序的运行结果如图2.4所示。图2.4 多分枝运行结果