试着做了下这个题,结果和你一样前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<<"书名录入成功"<
cout<<"作者录入成功"<
cout<<"编号录入成功"<
cout<<"单价录入成功"<
cout<<"数量录入成功"<
cout<<"是否继续输入"<
if(j==1) ;
else break;
}
}
void A::add()
{
for(int i=0;i
if(name[i]==writer[i])
{
int j;
cout<<"请依次输入书名,作者,编号,单价及数量,用空格键分开"<
cout<<"书名录入成功"<
cout<<"作者录入成功"<
cout<<"编号录入成功"<
cout<<"单价录入成功"<
cout<<"数量录入成功"<
cout<<"添加成功,是否继续添加"<
if(j==1);
else break;
}
}
}
void A::modify()
{
int i,j;
cout<<"请输入要修改书的书号"<
for(i=0;i
if(num1[i]!=j);
else
cout<<"书籍已找到"<
cout<<"书名录入成功"<
cout<<"作者录入成功"<
cout<<"单价录入成功"<
cout<<"数量录入成功"<
}
}
void A::cut()
{
int i,j;
cout<<"请输入要删除的书的书号"<
for(i=0;i
if(num1[i]==j)
{ name[i]=writer[i]=" ";
num1[i]=price[i]=num2[i]=0;
cout<<"初始化完成"<
}
}
}
void A::look()
{
int i;
for(i=0;i
cout<
}
void A::seek()
{
int i,j;
cout<<"请输入要查找的书的书号"<
for(i=0;i
if(j==num1[i])
cout<
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:信息录入"<
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<<"成功退出"<
}while(i!=8);
return 0;
}
/*终于完成了,第八项也OK了。
你自己多运行几组数据测试下,应该没问题了
*/