C#VisualStudio实验报告附源代码.docx
- 文档编号:24945566
- 上传时间:2023-06-03
- 格式:DOCX
- 页数:46
- 大小:78.09KB
C#VisualStudio实验报告附源代码.docx
《C#VisualStudio实验报告附源代码.docx》由会员分享,可在线阅读,更多相关《C#VisualStudio实验报告附源代码.docx(46页珍藏版)》请在冰豆网上搜索。
C#VisualStudio实验报告附源代码
C#VisualStudio试验汇报附源代码
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
1、创建C#控制台应用程序。
设计一个简单密码验证程序,若密码正确,则显示“欢迎进入本系统!
”,不然显示“密码输入错误,请重新输入!
”。
若连续三次密码输入错误,则显示“对不起,超出最多输入次数,取消服务!
”,程序退出。
namespaceConsoleApplication1
{classProgram
{staticvoidMain(string[]args)
{inti=0;
stringmima="123321";
boolk=true;
Console.WriteLine("");
Console.WriteLine("》》》》欢迎使用本系统《《《《\n\n");
Console.WriteLine("请输入您服务密码:
");
while(k)
{stringget=Console.ReadLine();
if(get!
=mima)
{i++;
if(i==3)
{Console.WriteLine("对不起,输入密码错误次数超出三次,\n\n已取消服务,请按任意键结束!
!
");
Console.ReadLine();
break;
}
elseConsole.WriteLine("对不起,密码有误,已经输入{0}次,请重新输入!
",i);
}
else
{Console.WriteLine("欢迎进入本系统!
!
");
Console.ReadLine();break;
}
}
}
}
}
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
4.定义一个shape抽象类,利用它作为基类派生出Rectangle、Circle等具体形状类,已知具体形状类均含有两个方法GetArea和GetPerim,分别用来求形状面积和周长。
最终编写一个测试程序对产生类功效进行验证。
namespaceshiyan14
{publicabstractclassShape
{publicdoubleGetArea()
{return0;
}
publicdoubleGetPerim()
{return0;
}
}
publicclassCircle:
Shape
{privatedoubler;
publicCircle(doublea)
{r=a;
}
publicnewdoubleGetArea()
{returnMath.PI*r*r;
}
publicnewdoubleGetPerim()
{returnMath.PI*2*r;
}
}
publicclassRectangle:
Shape
{privatedoublea,b;
publicRectangle(doublec,doubled)
{a=c;b=d;
}
publicnewdoubleGetArea()
{returna*b;
}
publicnewdoubleGetPerim()
{return(2*(a+b));
}
}
classProgram
{staticvoidMain(string[]args)
{Circlestr=newCircle(3);
Rectanglech=newRectangle(5,10);
Console.WriteLine("\n\0圆半径初始化为:
R=3\n");
Console.WriteLine("=>圆面积为:
{0}\n",str.GetArea());
Console.WriteLine("=>圆周长为:
{0}\n",str.GetPerim());
Console.WriteLine("\n\0初始化长方形长为:
10,宽为:
5\n");
Console.WriteLine("=>长方形面积:
{0}\n",ch.GetArea());
Console.WriteLine("=>长方形周长:
{0}\n",ch.GetPerim());
Console.Read();
}
}
}
编程实现一个模拟闹铃程序,含有闹铃、继续闹铃、打会盹儿,停止闹铃功效
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
namespaceshiyan15
{publicclassclock
{System.Media.SoundPlayermusic;
publicvoidalarm()
{music=newSystem.Media.SoundPlayer("Track06.wav");
music.Play();
}
publicvoidgoon()
{music=newSystem.Media.SoundPlayer("Track06.wav");
music.Play();
}
publicvoidrest()
{music.Stop();
System.Threading.Thread.Sleep(15000);
music=newSystem.Media.SoundPlayer("Track06.wav");
music.Play();
}
}
classProgram
{staticvoidMain(string[]args)
{clocka=newclock();
Console.WriteLine("\n\n=======主菜单========");
Console.WriteLine("\n\n1:
闹铃");
Console.WriteLine("\n\n2:
继续闹铃");
Console.WriteLine("\n\n3:
稍后闹铃");
Console.WriteLine("\n\n4:
停止闹铃");
Console.WriteLine("\n请输入您要选择编号");
inti=Console.Read();
Console.ReadLine();
if(i==1)
Environment.Exit(0);
a.alarm();
System.Console.Clear();
Console.WriteLine("\n\n=======主菜单========");
Console.WriteLine("\n\n2:
继续闹铃");
Console.WriteLine("\n\n3:
稍后闹铃");
Console.WriteLine("\n\n4:
停止闹铃");
Console.WriteLine("\n您还需要服务为");
Console.ReadLine();
if(i==2)
Environment.Exit(0);
a.goon();
System.Console.Clear();
Console.WriteLine("\n\n========主菜单=======");
Console.WriteLine("\n\n1:
闹铃");
Console.WriteLine("\n\n3:
稍后闹铃");
Console.WriteLine("\n\n4:
停止闹铃");
Console.WriteLine("\n您还需要服务为");
Console.ReadLine();
if(i==3)
Environment.Exit(0);
a.rest();
System.Console.Clear();
Console.WriteLine("\n\n=======主菜单========");
Console.WriteLine("\n\n1:
闹铃");
Console.WriteLine("\n\n2:
继续闹铃");
Console.WriteLine("\n\n4:
停止闹铃");
Console.WriteLine("\n您还需要服务为");
Console.ReadLine();
if(i==4)
{Environment.Exit(0);
Console.WriteLine("已停止闹铃!
!
!
");
Console.ReadLine();
}
}
}
}
创建一个点Point类,属性包含横坐标、纵坐标。
要求能够完成点移动操作、求两点距离操作,并利用运算符重载,对两个点进行比较(相等和不等)依据是两坐标点相等指它们横坐标和纵坐标分别相等。
编写一个测试程序对产生类功效进行验证。
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
namespace_1_2
{classpoint
{publicdoublex,y;
publicpoint(doublea,doubleb)
{x=a;y=b;
}
publicvoidmove(doublea,doubleb)
{x=x+a;
y=y+b;
}
publicstaticbooloperator==(pointa,pointb)
{if((a.x==b.x)&&(a.y==b.y))
returntrue;
elsereturnfalse;
}
publicstaticbooloperator!
=(pointa,pointb)
{if((a.x!
=b.x)||(a.y!
=b.y))
returntrue;
else
returnfalse;
}
publicdoubledistance(pointa,pointb)
{returnMath.Sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y));
}
}
classProgram
{staticvoidMain()
{pointa=newpoint(1,1);
pointb=newpoint(2,2);
Console.WriteLine("a点坐标:
({0},{1})",a.x,a.y);
Console.WriteLine("b点坐标:
({0},{1})",b.x,b.y);
Console.WriteLine("对a坐标移动2和3,按enter确定!
");
a.move(2,3);
Console.ReadLine();
Console.WriteLine("移动后a点得坐标是:
({0},{1})",a.x,a.y);
Console.WriteLine("a坐标移动后与b坐标距离是:
{0}",a.distance(a,b));
if(a==b)
Console.WriteLine("a点和b点相等\n");
else
Console.WriteLine("a点和b点不相等\n");
Console.WriteLine("对b坐标移动3和4,按enter确定!
");
b.move(1,2);
Console.ReadLine();
Console.WriteLine("移后b点坐标:
({0},{1})",b.x,b.y);
if(a==b)
Console.WriteLine("a点和b点相等");
else
Console.WriteLine("a点和b点不相等");
Console.ReadLine();
}
}
}
定义一个次序表SqlList类,要求能够完成在次序表中插入元素和删除元素,确定元素在次序表中位置,检索元素,清空表,判定表是否为空等操作。
编写一个测试程序进行验证。
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
namespaceshiyan13
{classSqlList
{privateint[]list;
privateintlen;
publicSqlList(int[]a,intb)
{list=a;
len=b;
}
publicvoidprint()
{for(inti=0;i {Console.Write("{0}\0",list[i]); } } publicboolinsert(intc,intd) {inttemp=0,i=d-1; for(;i {temp=list[i]; list[i]=c; c=temp; } if(d {Console.WriteLine("\n对不起,插入位置有误,重新输入插入位置! "); returnfalse; } returntrue; } publicbooldelete(inte) {intj=e; for(;j list[j-1]=list[j]; len--; if(e {Console.WriteLine("\n对不起,没有您要删除元素,请重新输入您要删除位置! \n"); returnfalse; } returntrue; } publicintlookup(inta) {inti=0; for(i=0;i if(list[i]==a) break; if(i==len) return-1; else return(i+1); } publicintreserch(inta) {inti=0,j=0; for(;i if(list[i]==a) j++; returnj; } publicvoidclear() {len=0; } publicvoidshow() {if(len==0) Console.WriteLine("次序表已清空! \n"); else Console.WriteLine("次序表未清空! \n"); } } classProgram {staticvoidMain(string[]args) {int[]a={1,2,3,4,5,6,7,8,9}; intb=9; SqlListlist=newSqlList(a,b); Console.WriteLine("次序表初始化为: "); list.print(); list.insert(4,6); Console.WriteLine("\n\n在次序表第6个数据前插入数据4后为: "); list.print(); Console.WriteLine("\n\n在次序表检索数据3,得到个数: {0}",list.reserch(3)); Console.WriteLine("\n\n在次序表检索数据4,得到个数: {0}",list.reserch(4)); Console.WriteLine("\n\n在次序表找到第一个数据3所在位置: {0}",list.lookup(3)); Console.WriteLine("\n\n在次序表找到第一个数据4所在位置: {0}",list.lookup(4)); list.delete(3); Console.WriteLine("\n\n删除次序表第3个数据: "); list.print(); Console.WriteLine("\n\n判定次序表是否为空: "); list.show(); list.clear(); Console.WriteLine("\n清空次序表后判定: "); list.show(); Console.Read(); } } } 试验2 编写一个利息计算程序。 当经过滚动条改变本金、月份或年利率时,能立刻计算出利息+本金。 usingSystem; usingSystem.Collections.Generic; usingSystem.ComponentModel; usingSystem.Data; usingSystem.Drawing; usingSystem.Linq; usingSystem.Text; usingSystem.Windows.Forms; namespace试验2._1 {publicpartialclassForm1: Form {publicForm1() {InitializeComponent(); } privatevoidhScrollBar1_Scroll(objectsender,ScrollEventArgse) {textBox1.Text=Convert.ToString(hScrollBar1.Value); textBox4.Text=Convert.ToString(Convert.ToUInt32(textBox1.Text)*Convert.ToUInt32(textBox3.Text)/100*Convert.ToUInt32(textBox2.Text)/12); textBox5.Text=Convert.ToString(Convert.ToUInt32(textBox1.Text)+Convert.ToUInt32(textBox4.Text)); } privatevoidhScrollBar2_Scroll(objectsender,ScrollEventArgse) {textBox2.Text=Convert.ToString(hScrollBar2.Value); textBox4.Text=Convert.ToString(Convert.ToUInt32(textBox1.Text)*Convert.ToUInt32(textBox3.Text)/100*Convert.ToUInt32(textBox2.Text)/12); textBox5.Text=Convert.ToString(Convert.ToUInt32(textBox1.Text)+Convert.ToUInt32(textBox4.Text)); } privatevoidvScrollBar1_Scroll(objectsender,ScrollEventArgse) {textBox3.Text=Convert.ToString(vScrollBar1.Value); textBox4.Text=Convert.ToString(Convert.ToUInt32(textBox1.Text)*Convert.ToUInt32(textBox3.Text)/100*Convert.ToUInt32(textBox2.Text)/12); textBox5.Text=Convert.ToString(Convert.ToUInt32(textBox1.Text)+Convert.ToUInt32(textBox4.Text)); } } } 编写一个字体编辑器程序,当程序运行后,单击字体、字号和颜色下面单选按钮以及字形下复选框,就能够在文本框中对设置字体进行预览。 参考界面以下图所表示。 usingSystem; usingSystem.Collections.Generic; usingSystem.ComponentModel; usingSystem.Data; usingSystem.Drawing; usingSystem.Linq; usingSystem.Text; usingSystem.Windows.Forms; namespace试验2._2 {publicpartialclassForm1: Form {publicForm1() {InitializeComponent(); } privatevoidradioButton1_Click(objectsender,EventArgse) {FontFamilyfont_family=newFontFamily("楷体"); textBox1.Font=newFont(font_family,textBox1.Font.Size,textBox1.Font.Style); } privatevoidradioButton2_Click(objectsender,EventArgse) {FontFamilyfont_family=newFontFamily("隶书"); textBox1.Font=newFont(font_family,textBox1.Font.Size,textBox1.Font.Style); } privatevoidradioButton3_Click(objectsender,EventArgse) {FontFamily
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VisualStudio 实验 报告 源代码