常熟理工学院-C_实验报告册(本二)
- 格式:doc
- 大小:276.50 KB
- 文档页数:60
1
《面向对象程序设计C#》实验指导及报告书
/ 学年 第 学期
姓 名:______________
学 号:______________
班 级:______________
指导教师:______________
实验目录
实验一 创建简单的.NET应用程序 ................................................. 3
实验二 选择和循环........................................................................... 9
实验三 数组和字符串处理............................................................. 15
实验四 类和对象编程练习............................................................... 21
实验五 继承与多态编程练习......................................................... 32
实验六 接口和集合........................................................................... 41
实验七 文件和输入输出................................................................. 50
实验八 代理和事件........................................................................... 54
实验一 创建简单的.NET应用程序
一、实验目的
1.了解C# 基本程序结构;
2.熟悉命令行方式下C#程序编写、编译、调试和执行过程;
3.了解VS2005集成开发环境的功能和特点。
二、预习内容
1.一个C#应用程序,从编写到运行,要经过哪几个步骤?
三、实验内容
1. 调试并运行下面程序,并写出运行结果:
using System;
class SimpleProgram
{
static void Main()
{
Console.WriteLine(“Hello!\nWorld.”);
}
}
运行结果(注意,按照屏幕输出格式写):
Hello!
World.
2. 调试并运行下面程序,并写出运行结果: using System;
class StarTriangle
{
static void Main(string[] args)
{
int i, j, k;
for (i = 0; i <= 3; i++)
{
for (j = 0; j <= 2 - i; j++)
Console.Write(" "); //一个空格
for (k = 0; k <= 2 * i; k++)
Console.Write("*");
Console.WriteLine();
}
Console.ReadKey();
}
}
运行结果(注意,按照屏幕输出格式写):
*
***
*****
*******
3. 下面是一个模拟计算器的程序(两个操作数都为正整数)。计算器应该能够执行以下算术操作:加法、减法、乘法、除法。调试并运行下面程序,验证当从键盘输入8和2两个整数时,选择进行乘法时的计算结果。
注意:程序输入时要区分大小写。
using System;
class CalcNumber
{
int number1,number2;
char option;
int result;
public void Number()
{
Console.WriteLine(“Enter the First Number:”);
number1=Convert.ToInt32(Console.ReadLine()); Console.WriteLine(“Enter the Second Number:”);
number2=Convert.ToInt32(Console.ReadLine());
Console.WriteLine(“Main Menu”);
Console.WriteLine(“1.Addition”);
Console.WriteLine(“2.Subtraction”);
Console.WriteLine(“3.Multiplication”);
Console.WriteLine(“4.Division”);
Console.WriteLine(“Enter the Operation you want to perform:”);
option=Convert.ToChar(Console.ReadLine());
switch(option)
{
case „1‟: result=number1 + number2;
break;
case „2‟: result=number1 - number2;
break;
case „3‟: result=number1 * number2;
break;
case „4‟: result=number1 / number2;
break;
default: Console.WriteLine(“Invalid Option”);
return;
}
Console.WriteLine(“The result is {0}” , result);
}
}
class TestCalc
{
static void Main(string[] args)
{
CalcNumber obj = new CalcNumber();
obj.Number();
}
}
从键盘输入8和2两个整数时, (1) 选择3时的运行结果:
(2) 选择5时的运行结果:
The result is 16
Invalid Option
从键盘输入的8和two时(第二个数为非整数),程序运行结果:
程序不运行
4.在保持功能不变的情况下,改写上例代码如下:
using System;
class CalcNumber
{
int number1,number2;
char option;
public void GetNumber()
{
Console.WriteLine(“Enter the First Number:”);
number1=Convert.ToInt32(Console.ReadLine());
Console.WriteLine(“Enter the Second Number:”);
number2=Convert.ToInt32(Console.ReadLine());
}
public void GetOption()
{
Console.WriteLine(“Main Menu”);
Console.WriteLine(“1.Addition”);
Console.WriteLine(“2.Subtraction”);
Console.WriteLine(“3.Multiplication”);
Console.WriteLine(“4.Division”);
Console.WriteLine(“Enter the Operation you want to perform:”);
option = Convert.ToChar(Console.ReadLine());
}
public int Compute()
{
int result; switch(option)
{
case „1‟: result=number1 + number2;
break;
case „2‟: result=number1 - number2;
break;
case „3‟: result=number1 * number2;
break;
case „4‟: result=number1 / number2;
break;
default: throw new InvalidOperationException (“Invalid Option”);
}
return result;
}
}
class TestCalc
{
static void Main(string[] args)
{
try
{
CalcNumber obj = new CalcNumber();
obj.GetNumber();
obj.GetOption();
int result = pute();
Console.WriteLine(“The result is {0}” , result);
}
catch(Exception e)
{
Console.WriteLine(e.Message);
}
}
}
比较与上例运行结果,是否完全相同:
从键盘输入8和2两个整数时,
选择3时的运行结果: