这是我用C++写的一个图书系统
和你说的要求差不多,你参照我的代码,进行文字修改,就可以完成程序
原代码如下
#include<iostream>
#include<fstream>
#include<windowsh>
using namespace std;
//
//
//图书管理系统主界面显示
//
//
int showMenu()
{
cout<<" -------------『图书管理系统』-------------"<<endl;
cout<<" ★ 1图书信息 ★"<<endl;
cout<<" ☆ 2借书信息 ☆"<<endl;
cout<<" ★ 3预定新书 ★"<<endl;
cout<<" ☆ 4意见反馈 ☆"<<endl;
cout<<" ★ 0退出系统 ★"<<endl;
cout<<" ☆备注: ☆"<<endl;
cout<<" ★ 图书管理系统 *** 作说明,请根据管理 ★"<<endl;
cout<<" ☆ 系统编号进行选择 *** 作。 ☆"<<endl;
cout<<" ★敬告: ★"<<endl;
cout<<" ☆ 请严格按照 *** 作说明进行 *** 作。否则 ☆"<<endl;
cout<<" ★ 一切后果自负。 感谢您使用本系统。★"<<endl;
cout<<" ☆ ☆"<<endl;
cout<<" ★版权所有 翻版必究 程序设计 mengzelee★"<<endl;
cout<<" ☆技术支持:mengzelee☆"<<endl;
};
//
//
//书籍信息:库存书籍的编号,书的名称,作者,价格,出版社
//
//
class Books
{
private:
int bNo;
char bName[20];
float price;
char zuozhe[20];
char bPub[20];
public:
void accpBooks()
{
cout<<"请输入书籍编号: (提示)只能输入数字"<<endl;
cin>>bNo;
cout<<"请输入书籍名称: (提示)只能输入中文"<<endl;
cin>>bName;
cout<<"请输入书籍价格: (提示)只能输入数字"<<endl;
cin>>price;
cout<<"请输入书籍作者: (提示)只能输入中文"<<endl;
cin>>zuozhe;
cout<<"请输入书籍出版社:(提示)只能输入中文"<<endl;
cin>>bPub;
}
void showBooks()
{
cout<<"您输入的书籍编号:"<<bNo<<'\n'<<
"您输入的书籍名称:"<<bName<<'\n'<<
"您输入的书籍价格:"<<price<<'\n'<<
"您输入的书籍作者:"<<zuozhe<<'\n'<<
"您输入的书籍出版社:"<<bPub<<'\n'<<endl;
}
};
//
//
//全局函数--书的信息,保存书的信息,查看书籍信息
//
//
//
int saveBooks()
{
Books bk;
ofstream ofs;
char ch='Y';
//
//
//循环写入
//
//
//
while(1)
{
cout<<"您是否要输入书籍的信息?(Y/N)"<<endl;
cin>>ch;
if(ch=='Y' || ch=='y')
{
ofsopen("Bookstxt");
bkaccpBooks();
ofswrite((char)&bk,sizeof(Books));
ofsclose();
}
else
{
cout<<"您是否要查看书籍的信息? (Y/N)"<<endl;
cin>>ch;
if(ch=='y'||ch=='Y')
{
ifstream ifs;
ifsopen("Bookstxt");
bkshowBooks();
ifsread((char)&bk,sizeof(Books));
while(ifs)
{
bkshowBooks();
ifsread((char)&bk,sizeof(Books));
ifsclose();
}
}
break;
}
}
}
//
//
//借书信息:书籍的编号,书的名称,作者,价格,出版社
//
//
class jBooks
{
private:
int jbNo;
char jbName[20];
float price;
char jzuozhe[20];
char jbPub[20];
public:
void accpjBooks()
{
cout<<"请输入书籍编号: (提示)只能输入数字"<<endl;
cin>>jbNo;
cout<<"请输入书籍名称: (提示)只能输入中文"<<endl;
cin>>jbName;
cout<<"请输入书籍价格: (提示)只能输入数字"<<endl;
cin>>price;
cout<<"请输入书籍作者: (提示)只能输入中文"<<endl;
cin>>jzuozhe;
cout<<"请输入书籍出版社:(提示)只能输入中文"<<endl;
cin>>jbPub;
}
void showjBooks()
{
cout<<"您输入的书籍编号:"<<jbNo<<'\n'<<
"您输入的书籍名称:"<<jbName<<'\n'<<
"您输入的书籍价格:"<<price<<'\n'<<
"您输入的书籍作者:"<<jzuozhe<<'\n'<<
"您输入的书籍出版社:"<<jbPub<<'\n'<<endl;
}
};
//
//
//全局函数--借书的信息,保存借书的信息,查看借书信息
//
//
//
int savejBooks()
{
jBooks bk1;
ofstream ofs;
char ch='Y';
//
//
//循环写入
//
//
//
while(true)
{
cout<<"您是否要输入借书信息?(Y/N)"<<endl;
cin>>ch;
if(ch=='Y' || ch=='y')
{
ofsopen("jBookstxt",ios::app);
bk1accpjBooks();
ofswrite((char)&bk1,sizeof(jBooks));
ofsclose();
}
else
{
cout<<"您是否要查看借书的信息? (Y/N)"<<endl;
cin>>ch;
if(ch=='y'||ch=='Y')
{
ifstream ifs;
ifsopen("jBookstxt");
bk1showjBooks();
ifsread((char)&bk1,sizeof(jBooks));
while(ifs)
{
bk1showjBooks();
ifsread((char)&bk1,sizeof(jBooks));
ifsclose();
}
}
break;
}
}
}
//
//
//预定信息:预定书籍的编号,书的名称,作者,价格,出版社
//
//
class ydBooks
{
private:
int ydbNo;
char ydbName[20];
float price;
char ydzuozhe[20];
char ydbPub[20];
public:
void accpydBooks()
{
cout<<"请输入预定书籍编号: (提示)只能输入数字"<<endl;
cin>>ydbNo;
cout<<"请输入预定书籍名称: (提示)只能输入中文"<<endl;
cin>>ydbName;
cout<<"请输入预定书籍价格: (提示)只能输入数字"<<endl;
cin>>price;
cout<<"请输入预定书籍作者: (提示)只能输入中文"<<endl;
cin>>ydzuozhe;
cout<<"请输入预定书籍出版社:(提示)只能输入中文"<<endl;
cin>>ydbPub;
}
void showydBooks()
{
cout<<"您输入的书籍编号:"<<ydbNo<<'\n'<<
"您输入的书籍名称:"<<ydbName<<'\n'<<
"您输入的书籍价格:"<<price<<'\n'<<
"您输入的书籍作者:"<<ydzuozhe<<'\n'<<
"您输入的书籍出版社:"<<ydbPub<<'\n'<<endl;
}
};
//
//
//全局函数--预定书的信息,保存预定书的信息,查看预定书籍信息
//
//
//
int saveydBooks()
{
ydBooks bk2;
ofstream ofs;
char ch='Y';
//
//
//循环写入
//
//
//
while(true)
{
cout<<"您是否要输入预定书籍信息?(Y/N)"<<endl;
cin>>ch;
if(ch=='Y' || ch=='y')
{
ofsopen("ydBookstxt",ios::app);
bk2accpydBooks();
ofswrite((char)&bk2,sizeof(ydBooks));
ofsclose();
}
else
{
cout<<"您是否要查看预定书籍的信息(Y/N)"<<endl;
cin>>ch;
if(ch=='y'||ch=='Y')
{
ifstream ifs;
ifsopen("ydBookstxt");
bk2showydBooks();
ifsread((char)&bk2,sizeof(ydBooks));
while(ifs)
{
bk2showydBooks();
ifsread((char)&bk2,sizeof(ydBooks));
ifsclose();
}
}
break;
}
}
}
//
//
//反馈信息:对图书管理系统的意见反馈
//
//
class fkBooks
{
private:
char fkbName[1000];
public:
void accpfkBooks()
{
cout<<"请输入对本系统的意见(提示)只能输入中文(500字以内)"<<endl;
cin>>fkbName;
}
void showfkBooks()
{
cout<<"您输入的反馈信息:"<<fkbName<<'\t'<<endl;
}
};
//
//
//全局函数--反馈的信息,保存反馈的信息,查看反馈信息
//
//
//
int savefkBooks()
{
fkBooks bk3;
ofstream ofs;
char ch='Y';
//
//
//循环写入
//
//
//
while(true)
{
cout<<"您是否要输入反馈信息?(Y/N)"<<endl;
cin>>ch;
if(ch=='Y' || ch=='y')
{
ofsopen("fkBookstxt",ios::app);
bk3accpfkBooks();
ofswrite((char)&bk3,sizeof(fkBooks));
ofsclose();
}
else
{
cout<<"您是否要查看反馈信息? (Y/N)"<<endl;
cin>>ch;
if(ch=='y'||ch=='Y')
{
ifstream ifs;
ifsopen("fkBookstxt");
bk3showfkBooks();
ifsread((char)&bk3,sizeof(fkBooks));
while(ifs)
{
bk3showfkBooks();
ifsread((char)&bk3,sizeof(fkBooks));
ifsclose();
}
}
break;
}
}
}
//
//
//选择 *** 作界面
//
//
class Xuanze
{
private:
int ch;
public:
void Xuanzeno()
{
while(true)
{
showMenu();
cout<<"请您按照 *** 作编号选择 *** 作:"<<endl;
cin>>ch;
switch(ch)
{
case 1:
saveBooks();
break;
case 2:
savejBooks();
break;
case 3:
saveydBooks();
break;
case 4:
savefkBooks();
break;
case 0:
cout<<"退出"<<endl;
exit(0);
default:
cout<<"请您按照 *** 作说明进行 *** 作!!!谢谢合作"<<endl;
break;
}
}
}
};
//
//
//主函数
//
//
int main()
{
Xuanze cc;
ccXuanzeno();
return 0;
}
#include<stdioh>
#include<stringh>
#include<mathh>
#define N 20//定义最多选手个数
typedef struct xuanshou
{
char name[20];//选手姓名
float a[10];//评委打分
float grade;//平均分,嫌麻烦可以直接放到数组里去
}Xu;
Xu xuanshou[N];//选手数组
Xu temp;//用来调换
void init(int n)//输入函数
{
int i,j;
float sum,max,min;
char c;
for(i=0;i<n;i++)
{
sum=0;//统计总分最后求得平均分
max=0;min=100;
printf("请输入第%d个选手的姓名:",i+1);
scanf("%s",&xuanshou[i]name);
printf("请输入10位评委的打分:");
for(j=0;j<10;j++)
{
scanf("%f",&xuanshou[i]a[j]);
scanf("%c",&c);
sum+=xuanshou[i]a[j];
if(max<xuanshou[i]a[j])max=xuanshou[i]a[j];
if(min>xuanshou[i]a[j])min=xuanshou[i]a[j];
if(j==9)xuanshou[i]grade=(sum-max-min)/8;
}
}
tempgrade=xuanshou[0]grade;
}
int mostequal(int j)//最公平
{
int i,flag;//flag记录最公平的评委序号
float cha=fabs(xuanshou[j]a[0]-xuanshou[j]grade);//作差比较
flag=0;
for(i=1;i<10;i++)
if(cha>fabs(xuanshou[j]a[i]-xuanshou[j]grade))
{
cha=fabs(xuanshou[j]a[i]-xuanshou[j]grade);
flag=i;
}
return flag+1;
}
int leastequal(int j)//最不公平
{
int i,flag;//flag记录最不公平的评委序号
float cha=fabs(xuanshou[j]a[0]-xuanshou[j]grade);//作差比较
flag=0;
for(i=1;i<10;i++)
if(cha<fabs(xuanshou[j]a[i]-xuanshou[j]grade))
{
cha=fabs(xuanshou[j]a[i]-xuanshou[j]grade);
flag=i;
}
return flag+1;
}
void paixu(int n)//对数组进行从大到小的排序
{
int i,j,k;
for(i=0;i<n;i++)
for(j=i+1;j<10;j++)
if(tempgrade<xuanshou[j]grade)
{
strcpy(tempname,xuanshou[i]name);
tempgrade=xuanshou[i]grade;
for(k=0;k<10;k++)
tempa[k]=xuanshou[i]a[k];//temp存储当前排序中要排位置的信息
strcpy(xuanshou[i]name,xuanshou[j]name);
xuanshou[i]grade=xuanshou[j]grade;
for(k=0;k<10;k++)
xuanshou[i]a[k]=xuanshou[j]a[k];//将较大的移到当前要排序的位置
strcpy(xuanshou[j]name,tempname);
xuanshou[j]grade=tempgrade;
for(k=0;k<10;k++)
xuanshou[j]a[k]=tempa[k];//将之前排序位置元素移至该处
}
}
void display(int n)//显示输出函数
{
int i;
printf("序号\t姓名\t分数\t\t最公平评委号\t最不公平评委号\n");
for(i=0;i<n;i++)
printf("%d\t%s\t%f\t\t%d\t\t%d\t\t\n",i+1,xuanshou[i]name,xuanshou[i]grade,mostequal(i),leastequal(i));
}
int main()
{
int n;
printf(" ==========青年歌手比赛分数统计==========\n");
printf("注意:输入评委分数的时候请用空格将各分数隔开输入(例如:10 20 30 40Enter)\n\n");
printf("请输入选手个数:");
scanf("%d",&n);
init(n);
paixu(n);
display(n);
}
void delay(uint a)/延迟程序/
{uint b;
while(a--)
for(b=0;b<10;b++);
}
你的这个延时函数出错了。
以上就是关于用C++ 编写事管理系统的程序怎么编写啊全部的内容,包括:用C++ 编写事管理系统的程序怎么编写啊、C程序语言 评委打分问题,用数组添加多名选手,怎么编写、单片机问题,发现开发板上,有点疑问,麻烦各位帮忙看看,是哪里出的问题 程序如下:等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)