任务:设计一个计算机管理系统完成图书管理基本业务。录入:每种书的登记内容包括书号、书名、著作者、现存量和库存量; 查询:对书号建立索引表(线性表)以提高查找效率; 采编入库:新购一种书,确定书号后,登记到图书帐目表中,如果表中已有,则只将库存量增加;
借阅:如果一种书的现存量大于0,则借出一本,登记借阅者的书证号和归还期限,改变现存量;
归还:注销对借阅者的登记,改变该书的现存量。
如有帮助,请采纳。
using System;
using System.Collections.Generic;
namespace Book_Manage
{
class MainClass
{
struct Book
{
//公司变量名前面加一个m_
/// <summary>
/// 书的名字
/// </summary>
public string m_BookName;
/// <summary>
/// 书的作者
/// </summary>
public string m_BookAuthor;
/// <summary>
/// 书的价格
/// </summary>
public float m_Price;
}
public static void Main(string[] args)
{
Book book1 = new Book ();
book1.m_BookName="平凡的世界";
book1.m_BookAuthor = "路遥";
book1.m_Price = 10;
Book book2;
book2.m_BookName="射雕英雄传";
book2.m_BookAuthor="金庸";
book2.m_Price=23.5f;
List<Book> m_Books = new List<Book> ();
m_Books.Add(book1);
m_Books.Add(book2);
while (true)
{
Console.WriteLine ("**************************************************");
Console.WriteLine ("* 欢迎进入图书管理系统 *");
Console.WriteLine ("*A:添加 D:删除 C:修改 S:查看 Q:退出 P:全部显示 *");
Console.WriteLine ("**************************************************");
Console.Write ("请输入你要进行的选择(Q表示退出!):");
string input = Console.ReadLine ();
//把input字符串转换成大写 然后再赋值给input
input=input.ToUpper();
switch (input)
{
//添加
case "A":
{
//往数组里面加一本书
Book book;
Console.Write ("请输入要添加的图书的名字:");
string name = Console.ReadLine ();
Console.Write ("前输入要添加的图书的作者:");
string author = Console.ReadLine ();
Console.Write ("请输入要添加的图书的价格:");
float price = float.Parse (Console.ReadLine ());
book.m_BookName = name;
book.m_BookAuthor = author;
book.m_Price = price;
m_Books.Add (book);
//进行其中的显示的清除
Console.Clear ();
}
break;
//删除
case "D":
{
Console.WriteLine ("E:按名称删除 R:按作者删除");
Console.Write ("请输入您的选择:");
string str = Console.ReadLine ();
switch (str)
{
case "E":
Book book = new Book ();
//判断是否找到此书
bool isFind = false;
Console.Write ("请输入您要进行删除的图书的名字:");
string strName = Console.ReadLine ();
for (int i = 0; i < m_Books.Count; i++) {
if (m_Books[i].m_BookName==strName)
{
isFind = true;
book.m_BookAuthor = m_Books [i].m_BookAuthor;
book.m_BookName = m_Books [i].m_BookName;
book.m_Price = m_Books [i].m_Price;
}
}
if (isFind)
{
m_Books.Remove (book);
Console.WriteLine ("删除成功!!!!!");
}
else
{
Console.WriteLine ("删除失败!!!!!");
}
break;
case "R":
//判断是否找到此书
bool isFind1 = false;
Book book3 = new Book ();
Console.Write ("请输入您要进行删除的图书的作者:");
string strAuthor = Console.ReadLine ();
for (int i = 0; i < m_Books.Count; i++) {
if (m_Books[i].m_BookAuthor==strAuthor)
{
isFind = true;
book3.m_BookAuthor = m_Books [i].m_BookAuthor;
book3.m_BookName = m_Books [i].m_BookName;
book3.m_Price = m_Books [i].m_Price;
}
}
if (isFind1)
{
m_Books.Remove (book3);
Console.WriteLine ("删除成功!!!!!");
}
else
{
Console.WriteLine ("删除失败!!!!!");
}
break;
}
//进行其中的显示的清除
Console.Clear ();
}
break;
//修改
case "C":
{
int index = 0;
bool isFind = false;
Book book3 = new Book ();;
Console.Write ("请输入要修改的书的名字:");
string strName = Console.ReadLine ();
for (int i = 0; i < m_Books.Count; i++)
{
if (m_Books[i].m_BookName==strName)
{
isFind = true;
index = i;
}
}
if (isFind)
{
Console.WriteLine ("Y:修改图书名称 H:修改图书作者 G:修改图书价格");
Console.Write ("请输入您的选择:");
string str = Console.ReadLine ();
switch (str)
{
case "Y":
Console.Write ("请输入您要修改成的图书名称:");
string strName1 = Console.ReadLine ();
book3.m_BookName = strName1;
book3.m_BookAuthor = m_Books[index].m_BookAuthor;
book3.m_Price = m_Books[index].m_Price;
break;
case "H":
Console.Write ("请输入您要修改成的图书作者:");
string strAuthor = Console.ReadLine ();
book3.m_BookName = m_Books[index].m_BookName;
book3.m_BookAuthor = strAuthor;
book3.m_Price = m_Books[index].m_Price;
break;
case "G":
Console.Write ("请输入您要修改成的图书名称:");
int price = int.Parse (Console.ReadLine ());
book3.m_Price = price;
book3.m_BookName = m_Books[index].m_BookName;
book3.m_BookAuthor = m_Books[index].m_BookAuthor;
break;
}
m_Books.RemoveAt (index);
m_Books.Insert (index,book3);
book3.m_BookAuthor = "";
book3.m_BookName = "";
book3.m_Price = 0;
}
else
{
Console.WriteLine ("没有此图书无法进行修改!!!!!");
}
//进行其中的显示的清除
Console.Clear ();
}
break;
//查看
case "S":
{
Console.WriteLine ("N:按名称查找 Z:按作者查找");
Console.Write ("请输入您的选择:");
string str = Console.ReadLine ();
str = str.ToUpper ();
switch (str)
{
case "N":
{
Console.Write ("请输入要查找书的名称:");
string strName = Console.ReadLine ();
//判断是否找到此书
bool isFind = false;
//记录找到的书的下标
int index = 0;
for (int i = 0; i < m_Books.Count; i++)
{
if (m_Books [i].m_BookName == strName)
{
isFind = true;
index = i;
}
}
if (isFind)
{
Console.WriteLine ("书的名字为:{0},书的作者为:{1},书的价格为:{2}",
m_Books [index].m_BookName,
m_Books [index].m_BookAuthor,
m_Books [index].m_Price);
}
else
{
Console.WriteLine ("没有找到这本书!!!!!!");
}
}
break;
case "Z":
{
Console.Write ("请输入要查找书的作者:");
string strAuthor = Console.ReadLine ();
//判断是否找到此书
bool isFind = false;
//记录找到的书的下标
int index = 0;
for (int i = 0; i < m_Books.Count; i++)
{
if (m_Books [i].m_BookName == strAuthor)
{
isFind = true;
index = i;
}
}
if (isFind)
{
Console.WriteLine ("书的名字为:{0},书的作者为:{1},书的价格为:{2}",
m_Books [index].m_BookName,
m_Books [index].m_BookAuthor,
m_Books [index].m_Price);
}
else
{
Console.WriteLine ("没有找到这本书!!!!!!");
}
}
break;
}
//进行其中的显示的清除
Console.Clear ();
}
break;
case "P":
for (int i = 0; i < m_Books.Count; i++)
{
Console.WriteLine ("书的名字:{0},书的作者:{1},书的价格:{2}",
m_Books[i].m_BookName,
m_Books[i].m_BookAuthor,
m_Books[i].m_Price);
}
break;
}
if (input=="Q")
{
break;
}
}
Console.WriteLine ("退出程序成功!!!!!");
}
}
}using System;
using System.Collections.Generic;
namespace Book_Manage
{
class MainClass
{
struct Book
{
//公司变量名前面加一个m_
/// <summary>
/// 书的名字
/// </summary>
public string m_BookName;
/// <summary>
/// 书的作者
/// </summary>
public string m_BookAuthor;
/// <summary>
/// 书的价格
/// </summary>
public float m_Price;
}
public static void Main(string[] args)
{
Book book1 = new Book ();
book1.m_BookName="平凡的世界";
book1.m_BookAuthor = "路遥";
book1.m_Price = 10;
Book book2;
book2.m_BookName="射雕英雄传";
book2.m_BookAuthor="金庸";
book2.m_Price=23.5f;
List<Book> m_Books = new List<Book> ();
m_Books.Add(book1);
m_Books.Add(book2);
while (true)
{
Console.WriteLine ("**************************************************");
Console.WriteLine ("* 欢迎进入图书管理系统 *");
Console.WriteLine ("*A:添加 D:删除 C:修改 S:查看 Q:退出 P:全部显示 *");
Console.WriteLine ("**************************************************");
Console.Write ("请输入你要进行的选择(Q表示退出!):");
string input = Console.ReadLine ();
//把input字符串转换成大写 然后再赋值给input
input=input.ToUpper();
switch (input)
{
//添加
case "A":
{
//往数组里面加一本书
Book book;
Console.Write ("请输入要添加的图书的名字:");
string name = Console.ReadLine ();
Console.Write ("前输入要添加的图书的作者:");
string author = Console.ReadLine ();
Console.Write ("请输入要添加的图书的价格:");
float price = float.Parse (Console.ReadLine ());
book.m_BookName = name;
book.m_BookAuthor = author;
book.m_Price = price;
m_Books.Add (book);
//进行其中的显示的清除
Console.Clear ();
}
break;
//删除
case "D":
{
Console.WriteLine ("E:按名称删除 R:按作者删除");
Console.Write ("请输入您的选择:");
string str = Console.ReadLine ();
switch (str)
{
case "E":
Book book = new Book ();
//判断是否找到此书
bool isFind = false;
Console.Write ("请输入您要进行删除的图书的名字:");
string strName = Console.ReadLine ();
for (int i = 0; i < m_Books.Count; i++) {
if (m_Books[i].m_BookName==strName)
{
isFind = true;
book.m_BookAuthor = m_Books [i].m_BookAuthor;
book.m_BookName = m_Books [i].m_BookName;
book.m_Price = m_Books [i].m_Price;
}
}
if (isFind)
{
m_Books.Remove (book);
Console.WriteLine ("删除成功!!!!!");
}
else
{
Console.WriteLine ("删除失败!!!!!");
}
break;
case "R":
//判断是否找到此书
bool isFind1 = false;
Book book3 = new Book ();
Console.Write ("请输入您要进行删除的图书的作者:");
string strAuthor = Console.ReadLine ();
for (int i = 0; i < m_Books.Count; i++) {
if (m_Books[i].m_BookAuthor==strAuthor)
{
isFind = true;
book3.m_BookAuthor = m_Books [i].m_BookAuthor;
book3.m_BookName = m_Books [i].m_BookName;
book3.m_Price = m_Books [i].m_Price;
}
}
if (isFind1)
{
m_Books.Remove (book3);
Console.WriteLine ("删除成功!!!!!");
}
else
{
Console.WriteLine ("删除失败!!!!!");
}
break;
}
//进行其中的显示的清除
Console.Clear ();
}
break;
//修改
case "C":
{
int index = 0;
bool isFind = false;
Book book3 = new Book ();;
Console.Write ("请输入要修改的书的名字:");
string strName = Console.ReadLine ();
for (int i = 0; i < m_Books.Count; i++)
{
if (m_Books[i].m_BookName==strName)
{
isFind = true;
index = i;
}
}
if (isFind)
{
Console.WriteLine ("Y:修改图书名称 H:修改图书作者 G:修改图书价格");
Console.Write ("请输入您的选择:");
string str = Console.ReadLine ();
switch (str)
{
case "Y":
Console.Write ("请输入您要修改成的图书名称:");
string strName1 = Console.ReadLine ();
book3.m_BookName = strName1;
book3.m_BookAuthor = m_Books[index].m_BookAuthor;
book3.m_Price = m_Books[index].m_Price;
break;
case "H":
Console.Write ("请输入您要修改成的图书作者:");
string strAuthor = Console.ReadLine ();
book3.m_BookName = m_Books[index].m_BookName;
book3.m_BookAuthor = strAuthor;
book3.m_Price = m_Books[index].m_Price;
break;
case "G":
Console.Write ("请输入您要修改成的图书名称:");
int price = int.Parse (Console.ReadLine ());
book3.m_Price = price;
book3.m_BookName = m_Books[index].m_BookName;
book3.m_BookAuthor = m_Books[index].m_BookAuthor;
break;
}
m_Books.RemoveAt (index);
m_Books.Insert (index,book3);
book3.m_BookAuthor = "";
book3.m_BookName = "";
book3.m_Price = 0;
}
else
{
Console.WriteLine ("没有此图书无法进行修改!!!!!");
}
//进行其中的显示的清除
Console.Clear ();
}
break;
//查看
case "S":
{
Console.WriteLine ("N:按名称查找 Z:按作者查找");
Console.Write ("请输入您的选择:");
string str = Console.ReadLine ();
str = str.ToUpper ();
switch (str)
{
case "N":
{
Console.Write ("请输入要查找书的名称:");
string strName = Console.ReadLine ();
//判断是否找到此书
bool isFind = false;
//记录找到的书的下标
int index = 0;
for (int i = 0; i < m_Books.Count; i++)
{
if (m_Books [i].m_BookName == strName)
{
isFind = true;
index = i;
}
}
if (isFind)
{
Console.WriteLine ("书的名字为:{0},书的作者为:{1},书的价格为:{2}",
m_Books [index].m_BookName,
m_Books [index].m_BookAuthor,
m_Books [index].m_Price);
}
else
{
Console.WriteLine ("没有找到这本书!!!!!!");
}
}
break;
case "Z":
{
Console.Write ("请输入要查找书的作者:");
string strAuthor = Console.ReadLine ();
//判断是否找到此书
bool isFind = false;
//记录找到的书的下标
int index = 0;
for (int i = 0; i < m_Books.Count; i++)
{
if (m_Books [i].m_BookName == strAuthor)
{
isFind = true;
index = i;
}
}
if (isFind)
{
Console.WriteLine ("书的名字为:{0},书的作者为:{1},书的价格为:{2}",
m_Books [index].m_BookName,
m_Books [index].m_BookAuthor,
m_Books [index].m_Price);
}
else
{
Console.WriteLine ("没有找到这本书!!!!!!");
}
}
break;
}
//进行其中的显示的清除
Console.Clear ();
}
break;
case "P":
for (int i = 0; i < m_Books.Count; i++)
{
Console.WriteLine ("书的名字:{0},书的作者:{1},书的价格:{2}",
m_Books[i].m_BookName,
m_Books[i].m_BookAuthor,
m_Books[i].m_Price);
}
break;
}
if (input=="Q")
{
break;
}
}
Console.WriteLine ("退出程序成功!!!!!");
}
}
}