C#实验

时间:2024.3.19

程序代码及运行:

点击‘读者管理’,进入读者管理界面:

如进行查询操作,输入借书证号,点击‘读者查询’如下图所示:

附‘读者查询’部分代码:

//读者查询功能

private void button4_Click(object sender, EventArgs e)

{

if (textBox1.Text.Trim() == "")

{

MessageBox.Show("请输入借书证号!");

return;

}

SqlConnection conn = new SqlConnection(strcon);

string sqlStrSelect = "select[ReaderID],[Name],[Sex],[Spec],[Born],[Photo],[Num]from [TReader] where[ReaderID]='" + textBox1.Text.Trim() + "'";

SqlCommand cmd = new SqlCommand(sqlStrSelect, conn);

try

{ conn.Open();

SqlDataReader sdr = cmd.ExecuteReader();

MemoryStream memstream = null;//定义一个内存流

if (sdr.HasRows)//如果有记录

{

sdr.Read();//读取第一行记录

textBox2.Text = sdr["Name"].ToString();//读取姓名

textBox3.Text = sdr["Born"].ToString();

comboBox1.Text = sdr["Spec"].ToString();

label7.Text = sdr["Num"].ToString() + "本";

bool sex = Convert.ToBoolean(sdr["Sex"]);//读取性别

if (sex == true)

{ radioButton1.Checked = true; }

else

{ radioButton2.Checked = true; }

if (sdr["Photo"] is DBNull)

{

MessageBox.Show("照片为空!");

}

else

{

if (this.pictureBox1.Image != null)

{ pictureBox1.Image.Dispose(); }

byte[] data = (byte[])sdr["Photo"];

memstream = new MemoryStream(data);//字节流转换为内存流

this.pictureBox1.Image = Image.FromStream(memstream);//内存流转化为照片 }

}

else

{

MessageBox.Show("没有此读者");

}

if (memstream != null)

{ memstream.Close(); }

if (!sdr.IsClosed)

{ sdr.Close(); }

}

catch (Exception ex)

{ MessageBox.Show(ex.Message); }

finally

{

if (conn.State == ConnectionState.Open)

{ conn.Close(); }

}

}

其他‘读者追加’、‘读者追加’、‘读者修改’等功能也如此。

进入借书界面:

输入借书证号进行查询:

如‘081101’借书4

借书时,把图书ID,ISBN,借书证号输入完整,点击‘借’:

借书源代码:

//查询功能

private void button1_Click(object sender, EventArgs e)

{

SqlConnection conn = new SqlConnection(strcon);

string sqlstr = "select [bookid],[isbn],[bookname],[publisher],[price],[ltime] from [rbl] where [readerid]='" + textBox1.Text.Trim() + "'";

try

{

SqlDataAdapter adapter = new SqlDataAdapter(sqlstr,conn );

DataSet dstable = new DataSet();

adapter.Fill(dstable, "testtable");

dataGridView1.DataSource = dstable.Tables["testtable"];

dataGridView1.Show();

}

catch (Exception ex)

{ MessageBox.Show(ex.Message); }

finally

{ conn.Close(); }

}

//借书功能

private void button2_Click(object sender, EventArgs e)

{

SqlConnection conn = new SqlConnection(strcon);

if (textBox1.Text.Trim() == "" || textBox2.Text.Trim() == "" || textBox3.Text.Trim() == "")

{

MessageBox.Show("借书证号,ISBN,图书ID输入完整!");

return;

}

SqlCommand cmd = new SqlCommand("book_borrow",conn );

cmd.CommandType = CommandType.StoredProcedure;

SqlParameter inreaderid = new SqlParameter("@in_readerid", SqlDbType.Char, 8);

inreaderid.Direction = ParameterDirection.Input;

inreaderid.Value = textBox1.Text.Trim();

cmd.Parameters.Add(inreaderid);

SqlParameter inisbn = new SqlParameter("@in_isbn", SqlDbType.Char, 18);

inisbn.Direction = ParameterDirection.Input;

inisbn.Value = textBox2.Text.Trim();

cmd.Parameters.Add(inisbn);

SqlParameter inbookid = new SqlParameter("@in_bookid", SqlDbType.Char, 18);

inbookid.Direction = ParameterDirection.Input;

inbookid.Value = textBox3.Text.Trim();

cmd.Parameters.Add(inbookid);

SqlParameter outreturn = new SqlParameter("@out_str", SqlDbType.Char, 30);

outreturn.Direction = ParameterDirection.Output;

cmd.Parameters.Add(outreturn);

try

{

conn.Open();

cmd.ExecuteNonQuery();

MessageBox.Show(outreturn.Value.ToString());

}

catch

{ MessageBox.Show("借书出错!"); }

finally

{

conn.Close();

button1_Click(null, null);

}

}

③ 进入还书模块:

输入借书证号,点击‘查询’:

‘借书证号’、‘ISBN’、‘图书ID’输入完整,点击‘还书’:

还书部分源代码参考:

//查询

private void button1_Click(object sender, EventArgs e)

{

SqlConnection conn = new SqlConnection(strcon);

string sqlstr = "select [bookid],[isbn],[bookname],[publisher],[price],[ltime] from [rbl] where [readerid]='" + textBox1.Text.Trim() + "'";

try

{

SqlDataAdapter adapter = new SqlDataAdapter(sqlstr, conn);

DataSet dstable = new DataSet();

adapter.Fill(dstable, "testtable");

dataGridView1.DataSource = dstable.Tables["testtable"];

dataGridView1.Show();

}

catch (Exception ex)

{ MessageBox.Show(ex.Message); }

finally

{ conn.Close(); }

}

//还书功能

private void button2_Click(object sender, EventArgs e)

{

if (textBox1.Text.Trim() == "" || textBox2.Text.Trim() == "" || textBox3.Text.Trim() == "")

{

MessageBox.Show("借书证号,ISBN,图书ID输入完整!");

return;

}

SqlConnection conn = new SqlConnection(strcon);

string sqlstr = "delete from [tlend] where [bookid] =@BookID";

SqlCommand cmd = new SqlCommand(sqlstr, conn);

cmd.Parameters.Add("@BookID", SqlDbType.Char, 10).Value = textBox3.Text.Trim();

try

{ conn.Open();

cmd.ExecuteNonQuery();//执行SQL语句并返回受影响的行数

this.rBLTableAdapter.Fill(this.mBOOKDataSet2.RBL);

}

catch (Exception ex)

{ MessageBox.Show(ex.Message); }

finally

{ conn.Close();

button1_Click(null, null);

}

}


第二篇:C实验五


实验五 一维数组和二维数组

一、实验目的

(1)熟练掌握一维、二维数组定义和数组元素引用,并熟练运用数组解决实际问题。

(2)了解数组在内存中的存储方式。

二、实验内容

1.数组循环右移(C5_1.cpp)

已知有n个数组元素的一维数组a[n],将数组a各元素循环右移1个位置,最后一个元素存到首位。

【输入】

输入2行数据,第一行是一个整数n,为数组的长度。

第二行有n个整数,为数组元素。

【输出】

输出一行,包括n个整数,循环右移后的数组,整数之间用空格隔开。

【输入输出样例1】

【输入输出样例2】

2.木材干燥率的计算(C5_2.CPP )

输入n批木材的干燥率,试计算平均含水率和含水率的标准差s:

【输入】

输入2行数据,第1行有1个整数表示木材的批数n;第2行有n个整数表示数组w中的各个含水率(%),整数之间用空格隔开。

【输出】

输出包含2个浮点数,即平均含水率(%)和标准差,要求小数点后保留2位精度。

【输入输出样例1】

【输入输出样例2】

3.二维数组最大值求解(C5_3.cpp)

输入维度为m*n的二维数组a[m][n],输出a数组元素中的最大值。

【输入】

输入m+1行数据,第一行为两个整数,用空格间隔,为数组的行长和列长,剩下的m行为数组元素值,每行n列,数据间用空格间隔。

【输出】

输出一个整数,为该二维数组中的最大值。

【输入输出样例1】

【输入输出样例2】

4.数组合并(C5_4.cpp)

已知有两个排好序(升序)的一维数组a[10]和b[10],现要求将它们合并成一个新的数组c[20],仍保持有序。

【输入】

输入2行数据,每行都是10个升序排列的整数,整数之间用空格隔开。

【输出】

输出1行,包含20个整数,整数间用空格间隔。

【输入输出样例1】

【输入输出样例2】

【数据限制】

a,b都是整型数组

更多相关推荐:
乙酰苯胺的制备(实验报告实验总结范文模板)

(实验报告)乙酰苯胺的制备【目的要求】⑴熟悉氨基酰化反应的原理及意义,掌握乙酰苯胺的制备方法;⑵进一步掌握分馏装置的安装与操作;⑶熟练掌握重结晶、趁热过滤和减压过滤等操作技术。【预习指导】⑴预习实验原理,了解乙…

初二物理实验总结

一、平面镜成像(课本56页)右图是研究平面镜成像特点的实验装置,A为玻璃板,B为点燃的蜡烛,C是和B完全相同但未点燃的蜡烛。我们在玻璃板中看到B的像是因光的所形成的虚像;此实验应该在比较的环境做。1.选择玻璃板…

初中物理实验总结,

一、物理量及计算公式二、实验1、实验目的:探究压力的作用效果和哪些因素有关压力的作用效果:沙面或塑料面的凹陷程度初步结论:(1)受力面积相等,压力越大,压力的作用效果越显著(2)压力相等时,受力面积越小,压力的…

20xx八年级物理实验总结

20xx-20xx学年八年级物理实验总结为了全面贯彻素质教育,培养学生的实践能力,我校加强了对实验的重视程度。在实际教学过程中,我发现学生在实验操作中存在一些问题。它反映出我在平时教学时对实验重视不够,也反映对…

八年级下物理实验总结

八下实验一、根据实验数据归纳表达实验结论1.根据定性实验数据归纳结论2次(1)在某条件下,A与B有关,或A与D无关。(2)在某条件下,描述实验现象的本质特征。(例如凸透镜成像规律、晶体的熔化和凝固、水的沸腾等)…

初中物理重要实验总结

一.伏安法测电阻1、定义:这种用电压表电流表测电阻的方法叫伏安法。2、原理:3、电路图:(右图)4、步骤:①根据电路图连接实物。连接实物时,必须注意开关滑动变阻器“一上一下”)“滑片远离接线柱”)串联在电路中电…

《erp实验总结报告》

一.实验目的:深刻体会ERP的工作原理,熟悉并掌握ERP各个模块的业务流程。全面掌握个管理模块的相互关联,进行综合管理和配置。运用ERP工具进行经营决策管理。二.实验流程及步骤实验在虚拟的企业即深圳绿色原野公司…

模拟外汇交易实验总结报告

模拟外汇交易实验总结报告学习外汇理论与交易原理以来已有11个星期再加上上学期学习的国际金融老师实际上已经带我们领略了国际交易的方方面面包括我们常见的外汇市场与利率决定即期外汇交易远期外汇交易外汇期权等等一系列的...

工业机器人 实验资料总结

运动控制器基本功能实验报告一实验目的1了解运动控制器伺服电机控制系统组成方式2了解运动控制器基本使用方法3初步掌握应用编程方法二实验装置1运动控制器美国GalilDMC4080运动控制器2伺服电机日本安川SGD...

试验段总结报告

目录一编制依据2二工程概况2三试验目的2四材料及技术准备3五人员和机械设备设置3六施工工艺控制和确定5七质量保证措施6八环境保护措施7九安全保证措施7十试验总结7193区94区试验段总结一编制依据1两阶段施工图...

审计实验总结模板

审计实验课程总结实验课程审计实验指导教师阳杰班级10会本1学生姓名刘佳雯学号10309013116提交时间20xx年11月8日教师评分温州大学城市学院实验总结目录一实验背景3二实验任务3三实验要求4四实验目的4...

实验室个人工作总结范文

实验室个人工作总结范文实验室个人gt工作总结不知不觉间来到公司已经有半年时间了这半年对我来说是人生的重大转折点我从此由学生转变成公司员工开始了自己的工作之旅在这半年我经历了很多酸甜苦辣认识了很多良师益友获得了很...

实验总结范文(66篇)