第一次实验指导书.docx
- 文档编号:10741579
- 上传时间:2023-05-27
- 格式:DOCX
- 页数:18
- 大小:288.26KB
第一次实验指导书.docx
《第一次实验指导书.docx》由会员分享,可在线阅读,更多相关《第一次实验指导书.docx(18页珍藏版)》请在冰点文库上搜索。
第一次实验指导书
天津工业大学
《.NET程序设计》
实验指导书
任课教师:
王瑞昆
辅导老师:
张振
2012-2-26
实验题目一、C#基本数据类型使用
一、实验目的:
∙学会使用vs2008创建控制台应用程序
∙掌握控制台应用程序框架下Console类的输入和输出方法的使用
∙掌握C#语言基本数据类型的使用和转化
∙学会画流程图
∙结构类型定义和使用
二、实验内容:
∙编写第一个控制台的输入与输出程序
∙编写一个操作可选的计算器程序
∙编写一个成绩统计程序
∙结构体类型定义和使用
三、实验设备仪器:
PC120台,要求:
windows7/xp操作系统,配置VisualStudio2008运行环境。
四、实验步骤:
1.控制台的输入与输出
问题
在控制台上实现文本的输入与输出。
问题说明
按照提示输入自己的姓名,程序输出你输入的名字、年龄和总成绩,并欢迎使用C#语言。
主要使用Console(控制台)对象的WriteLine和Write方法实现显示;使用ReadLine方法读入字符。
分析
Main()是应用程序(可执行)的入口点,它必须包含在一个类中,且仅有一个类能使用该标志定义。
参考步骤:
(1)为解决方案创建一个控制台应用程序的项目“MyFirst_Project”。
(2)将“Program.cs”类文件重命名为“Welcome.cs”。
(3)将以下代码添加到“Welcome.cs”中。
usingSystem; //给System名字空间加一个using指令,不再需要规定名字空间,就可以使用它们的方法和属性
usingSystem.Collections.Generic;
usingSystem.Text;
namespaceExample_1
{
classWelcome
{
/*这种注释
跨越多行*/
staticvoidMain(string[]args)
{
//这是单行注释
Console.Write("请输入你的姓名:
");
stringstrName=Console.ReadLine();
Console.Write("请输入你的年龄:
");
Byteage=Convert.ToByte(Console.ReadLine());
Console.Write("请输入你的总成绩:
");
floatscore=Convert.ToSingle(Console.ReadLine());
Console.WriteLine("{0}同志您好!
你输入的年龄为{1}:
成绩为:
{2}",strName,age,score);
/*{0}代替WriteLine方法的参数表中紧随格式串后的第一个变量,{0}可以认为是个占位符*/
Console.ReadLine();/*使得屏幕停止,等待输入*/
}
}
}
(4)选择“调试”→“开始执行(不调试)”或者按Ctrl+F5选项来执行此应用程序。
此应用程序的输出结果如图1.1所示。
图1.1Welcome.cs的输出结果
根据实验过程写出实验心得
2在控制台框架下设计一个最简单的计算器
问题
在控制台框架下编写一个操作可选的计算器程序
问题分析
这个问题涉及到3个输入变量,分别为两个操作数和一个运算符,根据要求设计流程图1.2如下:
图1.2计算器流程图
参考步骤:
(1)为解决方案创建一个控制台应用程序的项目“计算器程序”。
(2)将“Program.cs”类文件重命名为“计算器类.cs”。
(3)将以下代码添加到”计算器类.cs”中。
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
namespace计算器程序
{
class计算器类
{
staticvoidMain(string[]args)
{
doubleresult=0;
Console.WriteLine("*************欢迎使用我的计算器软件*****************");
Console.WriteLine("\n");//两次换行操作,第一次是\n产生换行,WriteLine方法也产生一次换行
Console.WriteLine("现在请您输入第一个操作数");
doubledata1=Convert.ToDouble(Console.ReadLine());//把输入的操作数转换为双精度浮点类型,你可以尝试使用double.Parse(Console.ReadLine());
Console.WriteLine("现在请您输入第二个操作数");
doubledata2=Convert.ToDouble(Console.ReadLine());//把输入的操作数转换为双精度浮点类型
Console.WriteLine("请选择你要进行的运算,请输入:
+、-、*或者/");
charopType=Convert.ToChar(Console.ReadLine());
switch(opType)
{
case'+':
result=data1+data2;
break;
case'-':
result=data1-data2;
break;
case'*':
result=data1*data2;
break;
case'/':
{
if(data2==0)
{
Console.WriteLine("除数为0,输入不正确");
}
else
result=data1/data2;
}
break;
default:
Console.WriteLine("输入错误");
Console.ReadLine();
break;
}
Console.WriteLine("{0}{1}{2}的结果为{3}",data1,opType,data2,result);//输出结果
Console.ReadLine();
}
}
}
(4)选择“调试”→“开始执行(不调试)”或者按Ctrl+F5选项来执行此应用程序。
此应用程序的输出结果如图1.3所示。
图1.3结果测试
根据实验过程写出实验心得
3.统计总成绩和平均分
参考步骤:
(1)为解决方案创建一个控制台应用程序的项目“Score”。
(2)将“Program.cs”类文件重命名为“Score.cs”。
(3)将以下代码添加到“Score.cs”中。
usingSystem;//给System名字空间加一个using指令,不再需要规定名字空间,就可以使用它们的方法和属性
usingSystem.Collections.Generic;
usingSystem.Text;
namespaceScore
{
classScore
{
/*这种注释
跨越多行*/
staticvoidMain(string[]args)
{
//这是单行注释
Console.WriteLine("统计英语、数学、政治、化学四门课程成绩");
Console.Write("请首先输入你的姓名:
");
stringstrName=Console.ReadLine();
Console.Write("请输入你的英语成绩:
");
floateng=Convert.ToSingle(Console.ReadLine());
Console.Write("请输入你的数学成绩:
");
floatmat=Convert.ToSingle(Console.ReadLine());
Console.Write("请输入你的政治成绩:
");
floatpol=Convert.ToSingle(Console.ReadLine());
Console.Write("请输入你的化学成绩:
");
floatche=Convert.ToSingle(Console.ReadLine());
Console.WriteLine("\n");
Console.WriteLine("{0}同学你好!
通过输入数字选择你的操作\n**1:
统计总成绩******2:
求平均成绩\n**3:
最高分******4:
最低分\n**5:
不及格科目******6:
退出\n",strName);
/*{0}代替WriteLine方法的参数表中紧随格式串后的第一个变量,{0}可以认为是个占位符*/
intchoice=Convert.ToInt32(Console.ReadLine());/*使得屏幕停止,等待输入*/
while(choice!
=6)
{
switch(choice)
{
case1:
{
floatall_score=eng+mat+pol+che;
Console.WriteLine("总成绩为:
{0}",all_score);
Console.WriteLine("\n\n\n1:
统计总成绩******2:
求平均成绩\n**3:
最高分******4:
最低分\n**5:
不及格科目******6:
退出");
Console.Write("输入选择符:
");
choice=Convert.ToInt32(Console.ReadLine());
}
break;
case2:
{
floataver_score=(eng+mat+pol+che)/4;
Console.WriteLine("平均成绩为:
{0}",aver_score);
Console.WriteLine("\n\n\n1:
统计总成绩******2:
求平均成绩\n**3:
最高分******4:
最低分\n**5:
不及格科目******6:
退出");
Console.Write("输入选择符:
");
choice=Convert.ToInt32(Console.ReadLine());
}
break;
case3:
{
floatmax=eng;
if(max { max=mat; } if(max { max=pol; } if(max { max=che; } Console.WriteLine("最高成绩为: {0}",max); Console.WriteLine("\n\n\n1: 统计总成绩******2: 求平均成绩\n**3: 最高分******4: 最低分\n**5: 不及格科目******6: 退出"); Console.Write("输入选择符: "); choice=Convert.ToInt32(Console.ReadLine()); } break; case4: { floatmin=eng; if(min>mat) { min=mat; } if(min>pol) { min=pol; } if(min>che) { min=che; } Console.WriteLine("最低成绩为: {0}",min); Console.WriteLine("\n\n\n1: 统计总成绩******2: 求平均成绩\n**3: 最高分******4: 最低分\n**5: 不及格科目******6: 退出"); Console.Write("输入选择符: "); choice=Convert.ToInt32(Console.ReadLine()); } break; case5: { constfloatstandard=60; if(eng { Console.WriteLine("英语成绩不及格,成绩为{0}",eng); } if(mat { Console.WriteLine("数学成绩不及格,成绩为{0}",mat); } if(pol { Console.WriteLine("政治成绩不及格,成绩为{0}",pol); } if(che { Console.WriteLine("英语成绩不及格,成绩为{0}",che); } Console.WriteLine("\n\n\n1: 统计总成绩******2: 求平均成绩\n**3: 最高分******4: 最低分\n**5: 不及格科目******6: 退出"); Console.Write("输入选择符: "); choice=Convert.ToInt32(Console.ReadLine()); } break; default: { Console.WriteLine("输入有误,请重新输入"); Console.WriteLine("\n\n\n1: 统计总成绩******2: 求平均成绩\n**3: 最高分******4: 最低分\n**5: 不及格科目******6: 退出"); Console.Write("输入选择符: "); choice=Convert.ToInt32(Console.ReadLine()); } break; } } } } } (4)选择“调试”→“开始执行(不调试)”或者按Ctrl+F5选项来执行此应用程序。 此应用程序的输出结果如图1.4所示。 图1.4Score.cs的输出结果 根据实验过程写出实验心得 4.结构体类型定义和使用 问题 在控制台上实现结构体类型的输入与输出。 问题说明 定义结构体类型StudentInfo,类型中包含学号、姓名、年龄和总成绩属性,分别写出对结构体StudentInfo的赋值函数InputInfo()和输出函数OutputInfo()。 参考步骤: (1)为解决方案创建一个控制台应用程序的项目“结构体的使用”。 (2)将以下代码添加到“Program.cs”中。 /* *版本号: *修改日期: *修改内容: *版权归属: * * */ usingSystem; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Text; namespace结构体的使用 { /*存储学生信息的结构类型*/ structStudentInfo { publicstringid;//学号成员 publicstringname;//姓名成员 publicbyteage;//年龄成员 publicushortall_score;//总分成员 } /*测试类*/ class测试类 { staticStudentInfoInputInfo(StudentInfosi)//结构体初始化函数 { Console.WriteLine("请输入你的学号"); Console.Write("学号: ");//观察一下Write方法和WriteLine方法的区别 si.id=Console.ReadLine(); Console.WriteLine("请输入你的姓名"); Console.Write("姓名: "); si.name=Console.ReadLine(); Console.WriteLine("请输入你的年龄"); Console.Write("年龄: "); /*注意这里的数据类型转化,Convert.ToByte(Console.ReadLine())也可以用 byte.Parse(Console.ReadLine())代替*/ si.age=Convert.ToByte(Console.ReadLine()); Console.WriteLine("请输入你的总分"); Console.Write("总分: "); /*注意这里的数据类型转化,Convert.ToByte(Console.ReadLine())也可以用 byte.Parse(Console.ReadLine())代替*/ si.all_score=Convert.ToUInt16(Console.ReadLine());//UInt16指代的就是ushort类型 returnsi; } staticvoidOutputInfo(StudentInfosi)//输出结构体信息函数 { Console.WriteLine("输出信息如下: "); Console.Write("学号: ");//观察一下Write方法和WriteLine方法的区别 Console.WriteLine(si.id); Console.Write("姓名: "); Console.WriteLine(si.name); Console.Write("年龄: "); /*注意这里的数据类型转化,Convert.ToByte(Console.ReadLine())也可以用 byte.Parse(Console.ReadLine())代替*/ Console.WriteLine(si.age); Console.Write("总分: "); /*注意这里的数据类型转化,Convert.ToByte(Console.ReadLine())也可以用 byte.Parse(Console.ReadLine())代替*/ Console.WriteLine(si.all_score); } staticvoidMain(string[]args) { Console.WriteLine("*****欢迎使用学生成绩统计系统*******"); Console.WriteLine();//换行 StudentInfost=newStudentInfo();//定义结构体 st=InputInfo(st);//调用信息输入函数 OutputInfo(st);//调用信息输出函数 Console.ReadLine();//使屏幕停顿 } } } (4)Ctrl+F5或者F5执行程序,结果如图1.5所示 图1.5输出结果 根据实验过程写出实验心得
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第一次 实验 指导书