歌手比赛系统java代码 歌手比赛系统java代码( 二 )


{
S-singScore2.P1=P1_Score(S-singScore2.A);
S-singScore1.P1=P1_Score(S-singScore1.A);
S-sum=(S-singScore1.P1+S-singScore1.P2)*1.05+(S-singScore2.P1+S-singScore2.P2);
return S-sum;
}
void Order(struct Singer *S)/*为歌手排名次*/
{
int i=0;
int j=0;
struct Singer temp;
for(i=0;iN-1;++i)
for(j=0;jN-i;++j)
if((S+j)-sum(S+j+1)-sum)
{
temp=*(S+j+1);
*(S+j+1)=*(S+j);
*(S+j)=temp;
}
printf("Has order.\n");
printf("\nplease press enter to return main\n");
getch();
}
void SaveRecords(struct Singer singer[])/*保存记录*/
{
FILE *fp;
char FileName[20];
int i=0;
printf("please input the file name,the houzui is txt:");
gets(FileName);
if((fp=fopen(FileName,"wb"))==NULL)
{
printf("can not open this files");
getch();
exit(0);
}
else
{
while(iN)
{
fwrite(singer[i],sizeof(singer[0]),1,fp);
++i;
}
fclose(fp);
}
printf("this file has save");
printf("\nplease press enter to return main\n");
getch();
}
void LoadRecords(struct Singer singer[])/*读取记录程序*/
{
FILE *fp;
char h[20];
int n,i=0;
printf("please input the file name,the houzui is txt:");
gets(h);
if((fp=fopen(h,"rb"))==NULL)
printf("can not open this files");
else
{
while(fread(singer[i],sizeof(singer[0]),1,fp)==1)
{
printf("singer name :%s\n",singer[i].singerName);
printf("singer num:%d\n",singer[i].num);
printf("\tfrist sing name:%s\n",singer[i].singName1);
printf("\tfrist sing score:%f,%f\n",singer[i].singScore1.P1,singer[i].singScore1.P2);
printf("\tsecond sing name:%s\n",singer[i].singName2);
printf("\tsecond sing score:%f,%f\n",singer[i].singScore2.P1,singer[i].singScore2.P2);
printf("\tsinger sum score:%f\n",singer[i].sum);
++i;
}
}
fclose(fp);
printf("\nplease press enter to return main");
getch();
}
void Display(struct Singer singer[])
{
int i=0;
for(i=0;iN;++i)
{
printf("singer name :%s\n",singer[i].singerName);
printf("singer num:%d\n",singer[i].num);
printf("\tfrist sing name:%s\n",singer[i].singName1);
printf("\tfrist sing score:%f,%f\n",singer[i].singScore1.P1,singer[i].singScore1.P2);
printf("\tsecond sing name:%s\n",singer[i].singName2);
printf("\tsecond sing score:%f,%f\n",singer[i].singScore2.P1,singer[i].singScore2.P2);
printf("\tsinger sum score:%f\n",singer[i].sum);
}
printf("\nplease press enter to return main");
getch();
}
void main()
{
handle_menu();
getch();
}
handle_menu(void)/*菜单处理程序*/
{
struct Singer singer[N];
int i;
for(;;)
switch(menu())
{
case 1:
clrscr();
for(i=0;iN;++i)
{
Input(singer[i]);
singer[i].num=i+1;
}
for(i=0;iN;++i)
singer[i].sum=Sum_Score(singer[i]);
break;
case 2:
clrscr();
Display(singer);break;
case 3:
clrscr();
Order(singer);break;
case 4:
clrscr();
SaveRecords(singer);break;
case 5:
clrscr();
LoadRecords(singer); break;
case 6:
exit(0);
}
}
int menu()
{
int n=7;
clrscr();
printf("1.If you want to input sing record,please input 1.\n");
printf("2.If you want display record,please input 2.\n");
printf("3.If you want to order sing score,please input 3.\n");
printf("4.If you want save record,please input 4.\n");
printf("5.If you want read record from txt,please input 5.\n");
printf("6.If you want quit,please input 6.");
while(n1||n6)
{
printf("\ninputnumber:");

推荐阅读