📄 operate.cpp
字号:
{
int cnt;//存放输入指标
int flag1;//标志男子项目和女子项目
int flag2;//标志分制
int m;
int n;
s[arraysize].sum=0;
s[arraysize].sum1=0;
s[arraysize].sum2=0;
struct project *head=NULL;
struct project *last=NULL;
cout<<"你好,你准备录入分数的是"<<s[arraysize].name<<endl;
cout<<"───────────────────────────────"<<endl;
//开始动态创建链表(begin create list)
LOOP:
projectD * newNode=(projectD *)malloc(sizeof(projectD));
newNode->link=NULL;
cout<<"**请选择项目类型**"<<endl;
displayProject();
cout<<"1、男子项目"<<endl;
cout<<"2、女子项目"<<endl;
cin>>m;
if(m==1)
{
flag1=1;
displayA();
}
else
{
flag1=2;
displayB();
}
cout<<"**请输入项目计分制**"<<endl;
cout<<"1、七分制"<<endl;//最大输入为7分
cout<<"2、五分制"<<endl;//最大输入为5分
cin>>n;
if(n==1)
flag2=1;
else
flag2=2;
if(flag1==1&&flag2==1)//第一种情况
{
cout<<"请选择运动会项目男子项目,最大不超过7分)"<<endl;
cin>>cnt;//这里cnt的范围应该在0-12之间
selectProjectA(projectNM,cnt);
strcpy(newNode->projectNB,temp);
cout<<"请输入得分:"<<endl;
cin>>newNode->score1;
while(!cin||newNode->score1!=7&&newNode->score1!=5&&newNode->score1!=3&&newNode->score1!=2&&newNode->score1!=1)
{
cout<<"输入错误"<<endl;
cout<<"你现在输入的是7分制的项目,分数只能是7,5,3,2,1中的一个"<<endl;
cin.clear();
cin.ignore(80,'\n');
cout<<"请重新输入:"<<endl;
cin>>newNode->score1;
}
s[arraysize].sum1+=newNode->score1;
if(newNode->score1==7)
newNode->first=true;
else if(newNode->score1==5)
newNode->second=true;
else
newNode->third=true;
}
else if(flag1==1&&flag2==2)//第二种情况
{
cout<<"请选择运动会项目(男子项目,最大不超过5分)"<<endl;
cin>>cnt;
selectProjectA(projectNM,cnt);
strcpy(newNode->projectNB,temp);
cout<<"请输入得分:"<<endl;
cin>>newNode->score1;
while(!cin||newNode->score1!=5&&newNode->score1!=3&&newNode->score1!=2)
{
cout<<"输入错误"<<endl;
cout<<"你现在输入的是5分制的项目,分数只能是5,3,2中的一个"<<endl;
cin.clear();
cin.ignore(80,'\n');
cout<<"请重新输入:"<<endl;
cin>>newNode->score1;
}
s[arraysize].sum1+=newNode->score1;
if(newNode->score1==5)
newNode->first=true;
else if(newNode->score1==3)
newNode->second=true;
else
newNode->third=true;
}
else if(flag1==2&&flag1==1)//第三种情况
{
cout<<"请输入运动会项目的名称(女子项目,最大不超过7分)"<<endl;
cin>>cnt;
selectProjectB(projectNW,cnt);
strcpy(newNode->projectNG,temp);
cout<<"请输入得分:"<<endl;
cin>>newNode->score2;
while(!cin||newNode->score2!=7&&newNode->score2!=5&&newNode->score2!=3&&newNode->score2!=2&&newNode->score2!=1)
{
cout<<"输入错误"<<endl;
cout<<"你现在输入的是7分制的项目,分数只能是7,5,3,2,1中的一个"<<endl;
cin.clear();
cin.ignore(80,'\n');
cout<<"请重新输入:"<<endl;
cin>>newNode->score2;
}
s[arraysize].sum2+=newNode->score2;
if(newNode->score2==7)
newNode->first=true;
else if(newNode->score2==5)
newNode->second=true;
else
newNode->third=true;
}
else
{
cout<<"请输入运动会项目的名称(女子项目,最大不超过5分)"<<endl;
cin>>cnt;
selectProjectB(projectNW,cnt);
strcpy(newNode->projectNG,temp);
cout<<"请输入得分:"<<endl;
cin>>newNode->score2;
while(!cin||newNode->score2!=5&&newNode->score2!=3&&newNode->score2!=2)
{
cout<<"输入错误"<<endl;
cout<<"你现在输入的是7分制的项目,分数只能是5,3,2,1中的一个"<<endl;
cin.clear();
cin.ignore(80,'\n');
cout<<"请重新输入:"<<endl;
cin>>newNode->score2;
}
s[arraysize].sum2+=newNode->score2;
if(newNode->score1==5)
newNode->first=true;
else if(newNode->score1==3)
newNode->second=true;
else
newNode->third=true;
}
if(head==NULL)
{
head=newNode;
last=newNode;
}
else
{
last->link=newNode;
last=newNode;
}
s[arraysize].p=head;
s[arraysize].sum=s[arraysize].sum1+s[arraysize].sum2;
cout<<"你输入的记录为:"<<endl;
displayRs(s,arraysize,flag1);
int lc;
char *mm[]={"1.继续输入",
"2.显示输入",
"3.结束输入"};
for(int h=0;h<3;h++)
cout<<mm[h]<<endl;
cin>>lc;
if(lc==1) goto LOOP;
else if(lc==2) displayRs(s,arraysize,flag1);
else
{
cout<<"恭喜,输入成功!"<<endl;
displaytotalMenu();
selectFunction();
}
}
void selectSchool()
{
cout<<" 请选择相应的学校选项录入分数(0-9)"<<endl;
int count;
cin>>count;
switch(count)
{
case 1:input(school,1);break;
case 2:input(school,2);break;
case 3:input(school,3);break;
case 4:input(school,4);break;
case 5:input(school,5);break;
case 6:input(school,6);break;
case 7:input(school,7);break;
case 8:input(school,8);break;
case 9:input(school,9);break;
case 0:input(school,0);break;
default: cout<<"输入错误"<<endl;
}
}
void create()
{
displaySchoolMenu();
selectSchool();
}
void displayTotalResult()
{
displayinfo();
}
void searchResults()
{
ResultMenuSub();
selectRSM();
}
void searchBySchoolNumber()
{
int c;
cout<<"请输入你要查询学校的编号"<<endl;
cin>>c;
cout<<school[c].name<<setw(12)<<school[c].sum1<<setw(12)<<school[c].sum2<<setw(12)<<school[c].sum<<endl;
}
void save()
{
ofstream outfile;
cout<<"请输入保存文件名:"<<endl;
char str[15];
cin>>str;
outfile.open(str,ios::out);
if(!outfile)
{
cout<<"申请内存失败";
exit(0);
}
outfile<<"┏──────────────────┯───────────────┓"<<endl;
outfile<<"│"<<school[1].name<<setw(31)<<" │ "<<school[1].sum<<setw(30)<<"│"<<endl;
outfile<<"├──────────────────┼───────────────┤"<<endl;
outfile<<"│"<<school[2].name<<setw(31)<<" │ "<<school[2].sum<<setw(30)<<"│"<<endl;
outfile<<"├──────────────────┼───────────────┤"<<endl;
outfile<<"│"<<school[3].name<<setw(31)<<" │ "<<school[3].sum<<setw(30)<<"│"<<endl;
outfile<<"├──────────────────┼───────────────┤"<<endl;
outfile<<"│"<<school[4].name<<setw(31)<<" │ "<<school[4].sum<<setw(30)<<"│"<<endl;
outfile<<"├──────────────────┼───────────────┤"<<endl;
outfile<<"│"<<school[5].name<<setw(31)<<" │ "<<school[5].sum<<setw(30)<<"│"<<endl;
outfile<<"├──────────────────┼───────────────┤"<<endl;
outfile<<"│"<<school[6].name<<setw(31)<<" │ "<<school[6].sum<<setw(30)<<"│"<<endl;
outfile<<"├──────────────────┼───────────────┤"<<endl;
outfile<<"│"<<school[7].name<<setw(31)<<" │ "<<school[7].sum<<setw(30)<<"│"<<endl;
outfile<<"├──────────────────┼───────────────┤"<<endl;
outfile<<"│"<<school[8].name<<setw(31)<<" │ "<<school[8].sum<<setw(30)<<"│"<<endl;
outfile<<"├──────────────────┼───────────────┤"<<endl;
outfile<<"│"<<school[9].name<<setw(31)<<" │ "<<school[9].sum<<setw(30)<<"│"<<endl;
outfile<<"├──────────────────┼───────────────┤"<<endl;
outfile<<"│"<<school[0].name<<setw(31)<<" │ "<<school[0].sum<<setw(30)<<"│"<<endl;
outfile<<"┕──────────────────┴───────────────┛"<<endl;
outfile.close();
cout<<"成功保存"<<endl;
}
void read()
{
cout<<"请输入要打开的文件名"<<endl;
ifstream infile;
char fileName[15];
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -