实验一 控制台程序编程
一、实验目的
1、熟悉C#的基本语句;
2、掌握条件语句、多分支语句、循环语句的使用;
3、掌握使跳转语句使用。
二、实验要求
1、程序结构清晰、语句完整;
2、格式正确,语句采用缩进格式;
3、设计子函数实现题目要求的功能;
4、编译、连接通过,熟练使用命令键;
5、运行结果正确,输入输出有提示,格式美观。
三、实验设备、材料和工具
1、奔腾4计算机或以上机型;
2、C#.NET2008或C#.NET2010。
四、实验内容和步骤
(一)调试下列程序,代码仅供参考,将调试结果界面、调试中出现的问题及解决情况写在后面。
1、判断某年是否闰年
实验题目:
编写一个程序,判断用户从键盘输入的年份是否是闰年。如果一个年份能被4整除,并且如果该年份是100的倍数,它能被400整除,那么该年份就是闰年。
实验步骤:
1) 声明int型变量year,用于表示年份。
2) 声明bool型变量isLeap,用于表示是否闰年。
3) 声明string型变量str,用于表示一串字符。
4) 向屏幕输出提示信息,提示用户输入年份。
5) 从键盘读入年份字符串赋值给变量str。
6) 将变量str中的数据转换成int型数据并赋值给变量year。
7) 通过混合取余运算、关系运算和条件逻辑运算判断year是否闰年,并将结果赋值给变量isLeap。
8) 使用条件运算符,当isLeap为true时,给变量str赋字符串“是”;否则,赋“不是”。
9) 输出结果,告诉用户相应年份是否闰年。
参考答案:
//Test1_cs using System; class Test1{ static void Main(){ int year; bool isLeap; string str; Console.Write("请输入年份: "); str=Console.ReadLine(); year=Int3Parse(str); //判断闰年 isLeap=(year%4==0&&year%100!=0)||(year%400==0); str=isLeap?"是":"不是"; Console.WriteLine("{0}年{1}闰年",year,str); } } |
运行结果:
调试中出现的问题及解决情况:
2、求三个整数的最大值
实验题目:
编写一个程序,使用条件运算符求用户输入的三个整数中的最大值。
实验目的:
1) 掌握int型和string型变量的声明和使用方法。
2) 了解C#语言的控制台输入方法。
3) 熟悉关系运算符的运算规则。
4) 熟悉条件运算符的运算规则。
5) 理解运算符的优先级概念。
实验步骤:
1) 声明int 型变量a、b、c,用于保存三个待求整数。
2) 声明 int 型变量max,用于保存最大值。
3) 声明 string 型变量 str,用于表示一串字符。
4) 分别向屏目输出提示信息,提示用户输入三个整数,将用户输入的字符串保存在变量str中,并在将str中的数据转换成int型数据后分别赋值给变量a、b、c。
5) 使用条件运算符和关系运算符求出变量a和b中的大者,并赋值给变量max。
6) 使用条件运算符和关系运算符求出变量max和c中的大者,并赋值给变量max。
7) 输出变量 max的值。
参考答案:
//Test2.cs using System; class Test2{ static void Main(){ int a,b,c; int max; string str;writeline输出数值变量 Console.Write("请输入第一个数: "); str=Console.ReadLine(); a=Int3Parse(str); Console.Write("请输入第二个数: "); str=Console.ReadLine(); b=Int3Parse(str); Console.Write("请输入第三个数: "); str=Console.ReadLine(); c=Int3Parse(str); //计算机已经按收了这三个数,然后比较三个数的大小. max=(a>b)?a:b; max=(max>c)?max:c; Console.WriteLine("最大值是{0}",max); } } |
运行结果:
调试中出现的问题及解决情况:
3、日期描述
实验题目:
定义一个表示日期的结构类型(包含年、月、日字段,其中月份采用枚举类型描述),并验证。验证时,访问日期结构类型变量中的每个成员,并访问整个变量。
实验目的:
1) 掌握枚举类型的定义和使用方法。
2) 掌握结构类型的定义和使用方法。
实验步骤:
1) 定义枚举类型MonthOfYear,用于描述一年中的12个月。
2) 定义结构类型Date,用于描述日期,结构类型Date中包含三个公共字段。其中,string型字段Year用于表示年份,MonthOfYear型字段Month用于表示月份,string型字段Day用于表示天数。
3) 定义一个含有Main()方法的类。
4) 在Main方法中,首先声明两个Date变量date1,date2。
5) 分别给变量date1的字段赋值。
6) 输出变量date1各字段的值。
7) 将变量date1的值赋给变量2,然后,修改变量date2的Day字段值。
8) 输出变量date2各字段的值。
参考答案:
//Test3.cs using System; class Test3{ enum MonthOfYear{ 一月,二月,三月,四月,五月,六月,七月,八月,九月,十月,十一月,十二月} struct Date{ public string Year; public MonthOfYear Month; public string Day; } static void Main(){ Date date1,date2; date1.Year="二零零九年"; date1.Month=MonthOfYear.三月; date1.Day="二号"; Console.WriteLine("{0}{1}{2}",date1.Year,date1.Month,date1.Day); date2=date1; dateDay="三十一号"; Console.WriteLine("{0}{1}{2}",dateYear,dateMonth,dateDay); } } |
运行结果:
调试中出现的问题及解决情况:
4、整数排序
实验题目:
编写一个程序,使用if语句将用户输入的三个整数按从小到大的顺序排序。
实验目的:
1) 掌握if语句的使用方法。
2) 学会嵌套使用if语句。
实验步骤:
1) 声明int型变量a、b、c,用于保存用户输入的三个整数。
2) 声明int型变量t,在交换变量a、b、c的值时,用于临时保存其中的某个值。
3) 从键盘读入三个整数,分别保存在变量a、b、c中。
4) 使用if语句将变量a、b、c中的最大值赋给变量c,最小值赋给变量a,中间值赋给变量b。
5) 按从小到大的顺序依次输出变量a、b、c的值。
参考答案:
代码如下:
//Test4.cs using System; class Test4{ static void Main(){ int a,b,c,t; Console.Write("请输入第一个整数:"); a=Int3Parse(Console.ReadLine()); Console.Write("请输入第二个整数:"); b=Int3Parse(Console.ReadLine()); Console.Write("请输入第三个整数:"); c=Int3Parse(Console.ReadLine()); if(a>b){ t=a; a=b; b=t; } if(b>c){ t=c; c=b; if(t>a) b=t; else{ b=a; a=t; } } Console.WriteLine("从小到大的顺序依次为:{0},{1},{2}",a,b,c); } |
运行结果:
调试中出现的问题及解决情况:
5、简单计算器
实验题目:
编写一个简单的计算器程序,能够根据用户从键盘输入的运算指令和整数,进行简单的加减乘除运算。
实验目的:
1) 掌握循环语句while的使用。
2) 掌握循环语句do-while的使用。
3) 熟悉选择语句switch的使用。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论