c语言课设小型图书管理系统设计(c++)

2025-03-07 10:11:57
推荐回答(1个)
回答1:

试着做了下这个题,结果和你一样前7项全解决了,就剩下第八个了,明天再试试,能做出来给你发代码。要是我做不出来,还请你给我指点一二。

/*终于完成了,第八项也OK了。
你自己多运行几组数据测试下,应该没问题了
*/

// 20130718.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include
#include
#include
using namespace std;
#define N 5

void swap(string & a,string & b)
{
string c= a;
a= b;
b= c;
}
void swap1(int & a,int & b)
{
int c=a;
a=b;
b=c;
}

class A
{
private:
string name[N];
string writer[N];
int num1[N];//书号
int price[N];
int num2[N];//数量
public:
void input();
void add();
void modify();
void cut();
void look();
void seek();
void display();
};

void A::input()
{
for(int i=0;i {
int j;
cout<<"请依次输入书名,作者,编号,单价及数量,用空格键分开"<
cin>>name[i];
cout<<"书名录入成功"< cin>>writer[i];
cout<<"作者录入成功"< cin>>num1[i];
cout<<"编号录入成功"< cin>>price[i];
cout<<"单价录入成功"< cin>>num2[i];
cout<<"数量录入成功"<
cout<<"是否继续输入"< cout<<"1:继续"< cout<<"2:退出"< cin>>j;
if(j==1) ;
else break;
}
}

void A::add()
{
for(int i=0;i {
if(name[i]==writer[i])
{
int j;
cout<<"请依次输入书名,作者,编号,单价及数量,用空格键分开"< cin>>name[i];
cout<<"书名录入成功"< cin>>writer[i];
cout<<"作者录入成功"< cin>>num1[i];
cout<<"编号录入成功"< cin>>price[i];
cout<<"单价录入成功"< cin>>num2[i];
cout<<"数量录入成功"<
cout<<"添加成功,是否继续添加"< cout<<"1:是"< cout<<"2:否"< cin>>j;
if(j==1);
else break;
}
}
}

void A::modify()
{
int i,j;
cout<<"请输入要修改书的书号"< cin>>j;
for(i=0;i {
if(num1[i]!=j);

else
cout<<"书籍已找到"< cout<<"请重新输入书名,作者,编号,单价及数量,用空格键分开"< cin>>name[i];
cout<<"书名录入成功"< cin>>writer[i];
cout<<"作者录入成功"< cin>>price[i];
cout<<"单价录入成功"< cin>>num2[i];
cout<<"数量录入成功"< break;
}
}

void A::cut()
{
int i,j;
cout<<"请输入要删除的书的书号"< cin>>j;
for(i=0;i {
if(num1[i]==j)
{ name[i]=writer[i]=" ";
num1[i]=price[i]=num2[i]=0;
cout<<"初始化完成"< break;
}
}

}

void A::look()
{
int i;
for(i=0;i {
cout< }
}

void A::seek()
{
int i,j;
cout<<"请输入要查找的书的书号"< cin>>j;
for(i=0;i {
if(j==num1[i])
cout< else
break;
}
}

void A::display()//排序未解决,难。。。。。
{
int i,j,k/*,P,N1,N2*/;
for(i=1;i {
for(j=0;j {
if(price[i]>price[j])
{
swap1(price[i],price[j]);
swap(name[i],name[j]);
swap(writer[i],writer[j]);
swap1(num1[i],num1[j]);
swap1(num2[i],num2[j]);
}
}
}
for(k=0;k {
cout< }
cout<<"排序完成"<}

int main()
{
A a;
int i;
do
{
cout<<"1:信息录入"< cout<<"2:添加记录"< cout<<"3:信息修改"< cout<<"4:信息删除"< cout<<"5:信息浏览"< cout<<"6:信息查询"< cout<<"7:信息排序"< cout<<"8:退出系统"<
cin>>i;

switch(i)
{
case 1:a.input();break;
case 2:a.add();break;
case 3:a.modify();break;
case 4:a.cut();break;
case 5:a.look();break;
case 6:a.seek();break;
case 7:a.display();break;
case 8:cout<<"成功退出"< default:cout<<"输入错误"< }
}while(i!=8);

return 0;
}

/*终于完成了,第八项也OK了。
你自己多运行几组数据测试下,应该没问题了
*/