面向对象与程序设计C#课程设计.docx
- 文档编号:2896941
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:15
- 大小:565.72KB
面向对象与程序设计C#课程设计.docx
《面向对象与程序设计C#课程设计.docx》由会员分享,可在线阅读,更多相关《面向对象与程序设计C#课程设计.docx(15页珍藏版)》请在冰豆网上搜索。
面向对象与程序设计C#课程设计
成绩
辽宁工程技术大学上机实验报告
实验名称
课程设计
院系
姓名
设计
目的
1.领会面向对象程序设计的设计思想。
2.合理构建对象类的静态特征及对外的服务。
3.掌握设计对象类的数据成员及服务的方法。
4.学会运用面向对象程序设计的思想设计一个简单的信息系统。
设计
要求
(一):
设计一个对象类,该类具有下列服务:
1.检测给定的字符串是否为数字
2.检测给定的字符串是否含有字母,数字和下划线
3.检测给定的字符串是否为有效的日期格式(日期格式:
2008-12-15)
4.检测给定的字符串是否为有效的身份证号码格式
5.返回一个随机的6位字符串(该字符串只含有数字和字母)
注意:
对象类方法的内部实现要使用高效的StringBuilder或StringBuffer实现,不要直接使用String对象进行操作。
(二):
设计一个简单的基于C/S结构的学生个人信息管理系统,该系统具有录入,查询,修改三项基本功能。
要求如下:
1.具有简单的录入,查询和修改的GUI
2.系统使用的GUI组件不得少于5种,越全面越好,但要合适(和谐界面)
3.存储数据的媒介可选择text文档或者数据库,推荐第一种
4.学生个人信息必须包括:
编号,姓名,性别,出生日期,是否已婚,身份证号,自我简介,其余可自行丰富。
5.具有对姓名,出生日期和身份证号进行简单效验的功能
6.学生编号随机产生
注意:
数据的存储媒介必须选择其中一种,也可以结合使用。
设计
进度
本次共有2个设计,完成2个。
教师
评语
classProgram
{
staticvoidMain(string[]args)
{
flag:
Objecta=newObject();
StringBuilderb=newStringBuilder();
Console.WriteLine("请输入:
");
stringstr=Console.ReadLine();
b.Append(str);
a.isNumber(b);
a.isSpecialChar(b);
a.isValidDateFormat(b);
a.isValidIDFormat(b);
Console.WriteLine("返回一个随机6位字符串:
"+a.RandomString());
gotoflag;
}
}
classObject
{
publicvoidisNumber(StringBuildersb)
{//检测给定的字符串是否为数字
stringstr=sb.ToString();
intlength=0;
for(inti=0;i { if(Char.IsNumber(str[i])) length++; else break; } if(length Console.WriteLine("输入的字符串不全为数字! "); else Console.WriteLine("输入的字符串为数字! "); } publicvoidisSpecialChar(StringBuildersb) {//检测给定的字符串是否含有字母,数字和下划线 stringstr=sb.ToString(); inta=0,b=0,c=0; for(inti=0;i { if(Char.IsLetter(str[i])) a++; elseif(Char.IsNumber(str[i])) b++; elseif(str[i]=='_') c++; } Console.WriteLine("该字符串中有数字"+b+"个。 "); Console.WriteLine("该字符串中有字母"+a+"个。 "); Console.WriteLine("该字符串中有下划线"+c+"个。 "); } publicvoidisValidDateFormat(StringBuildersb) {//检测给定的字符串是否为有效的日期格式 stringstr=sb.ToString(); try { DateTime.Parse(str); Console.WriteLine("该字符串为有效日期格式! "); } catch(Exception) { Console.WriteLine("该字符串不为有效日期格式! "); } } publicvoidisValidIDFormat(StringBuildersb) {//检测给定的字符串是否为有效的身份证号码格式 stringstr=sb.ToString(); intkey=0; for(inti=0;i if(! Char.IsNumber(str[i])) key++; if(key==0&&str.Length==18&&(Char.IsNumber(str[str.Length-1])||Char.IsUpper(str[str.Length-1]))) Console.WriteLine("该字符串为有效身份证号码! "); else Console.WriteLine("该字符串不为有效身份证号码! "); } publicstringRandomString() {//返回一个随机的不重复的6位字符串 intrep=0,length=6; stringstr=string.Empty; longnum2=DateTime.Now.Ticks+rep; rep++; Randomrandom=newRandom(((int)(((ulong)num2)&0xffffffffL))|((int)(num2>>rep))); for(inti=0;i { charch; intnum=random.Next(); if((num%2)==0) { ch=(char)(0x30+((ushort)(num%10))); } else { ch=(char)(0x41+((ushort)(num%0x1a))); } str=str+ch.ToString(); } returnstr; } } 窗体1: 主界面 publicpartialclassForm1: Form { publicForm1() { InitializeComponent(); if(! Directory.Exists("D: \\学生信息管理系统")) Directory.CreateDirectory("D: \\学生信息管理系统"); } privatevoidForm1_Load(objectsender,EventArgse) {} privatevoidbutton1_Click(objectsender,EventArgse) { Form2form=newForm2(); form.Show();//弹出窗体2: 信息录入 } privatevoidbutton2_Click(objectsender,EventArgse) { Form3form=newForm3(); form.Show();//弹出窗体3: 信息查询 } Privatevoidbutton3_Click(objectsender,EventArgse) { Form4form=newForm4(); form.Show();//弹出窗体4: 信息修改 } privatevoidbutton4_Click(objectsender,EventArgse) { if(MessageBox.Show("你确定要退出吗? ","请确认...",MessageBoxButtons.YesNo,MessageBoxIcon.Question)==DialogResult.Yes) Application.Exit();//退出系统 } 窗体2: 信息录入 PublicpartialclassForm2: Form { PublicstringNum; PublicForm2() { InitializeComponent(); this.Num=""; } Publicvoidbutton1_Click(objectsender,EventArgse) { this.Num=RandomString(); strings1="D: \\学生信息管理系统"+"\\"+"\\"+this.Num+".txt"; FileStreamfile=File.Create(s1); StreamWritersw=newStreamWriter(file); sw.WriteLine("姓名: "+textBox1.Text); if(radioButton1.Checked) sw.WriteLine("性别: 男"); else sw.WriteLine("性别: 女"); sw.WriteLine("学院: "+textBox2.Text); sw.WriteLine("班级: "+textBox3.Text); if(isValidDateFormat(textBox4.Text)) sw.WriteLine("出生日期: "+textBox4.Text); if(isValidIDFormat(textBox5.Text)) sw.WriteLine("身份证号: "+textBox5.Text); sw.WriteLine("婚姻状况: "+textBox6.Text); sw.WriteLine("个人简介: "+richTextBox1.Text); sw.Close(); textBox1.Text=""; radioButton1.Checked=false; radioButton2.Checked=false; textBox2.Text=""; textBox3.Text=""; textBox4.Text=""; textBox5.Text=""; textBox6.Text=""; richTextBox1.Text=""; textBox8.Text=this.Num; } publicboolisValidName(st
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 程序设计 C# 课程设计
