资源简介
大家可以看看源码,自己做参考,其中有可能写的比较乱,不过里面的一些技术都有所体现,源码可可以执行,歌手评分系统初步是基于c++的带链表和文件存储,大家可以试试看,很好用大家可以看看源码,自己做参考,其中有可能写的比较乱,不过里面的一些技术都有所体现,源码可可以执行,歌手评分系统初步是基于c++的带链表和文件存储,大家可以试试看,很好用
代码片段和文件信息
#include
#include
#define len sizeof(geshou)
typedef struct booke
{
int xvhao;
char name[100];
int pingfen[9];
int paiming;
double defen;
struct booke *next;
}geshou;
geshou *last=NULL;
geshou e[20];
geshou * newput(geshou *p)
{
geshou *h;
char namename[50]=“ “;
int i;
h=(geshou*)malloc((len));
h->xvhao=p->xvhao+1;
printf(“输入歌手信息\n“);
scanf(“%s“&namename);
p->next=h;
for(i=0;i<=50;i++)
h->name[i]=namename[i];
for(i=0;i<9;i++)
h->pingfen[i]=0;
h->defen=0;
h->paiming=0;
h->next=NULL;
return h;
}
geshou * shanchu(geshou *pgeshou *last)
{
int k;geshou *h*g*yu;
geshou *qw=last;
h=p;
printf(“输入删除歌手的编号:\n“);
scanf(“%d“&k);
while(2)
{
if(h->xvhao==k)
break;
g=h;
h=h->next;
}
if(h->xvhao==qw->xvhao)
qw=g;
g->next=h->next;
yu=g->next;
while(yu)
{
if(yu->next==NULL)
qw=yu;
yu->xvhao--;
yu=yu->next;
}
return qw;
}
void pingfen(geshou *p)
{
int t;geshou *h;
printf(“要给第几号歌手打分?“);
scanf(“%d“&t);
h=p;
while(2)
{
if(h->xvhao==t)
{
printf(“请输入九位评委打分:“);
scanf(“%d%d%d%d%d%d%d%d%d“&h->pingfen[0]&h->pingfen[1]&h->pingfen[2]&h->pingfen[3]&h->pingfen[4]&h->pingfen[5]&h->pingfen[6]&h->pingfen[7]&h->pingfen[8]);
break;
}
h=h->next;
}
}
void yuanshi(geshou *hgeshou *last)
{
FILE *file=fopen(“singerOriginal.dat““wb“);
geshou *p;int qqyy=last->xvhao;
p=h->next;
fwrite(&last->xvhaosizeof(int)1file);
while(p)
{
qq=fwrite(plen1file);
p=p->next;
}
if(qq==0)
printf(“异常!存储失败\n“);
else
printf(“歌手初始记录已经存储!\n“);
fclose(file);
}
void defen(geshou *p)
{
int ijlinshi;
geshou *h;
h=p->next;
while(h)
{
for(i=8;i>1;i--)
{
for(j=0;j<=i-1;j++)
{
if((h->pingfen[j])>(h->pingfen[j+1]))
{
linshi=h->pingfen[j+1];h->pingfen[j+1]=h->pingfen[j];h->pingfen[j]=linshi;
}
}
}
h->defen=(h->pingfen[1]+h->pingfen[2]+h->pingfen[3]+h->pingfen[4]+h->pingfen[5]+h->pingfen[6]+h->pingfen[7])/7.0;
h=h->next;
}
}
void paiming1(geshou *pgeshou *ii)
{
int b=1;
geshou *h;
geshou *qa;
h=p->next;qa=p->next;
while(b<=ii->xvhao)
{
while(h)
{
while(qa->paiming!=0||h->paiming!=0)
{
if(h->paiming!=0&&qa->paiming!=0)
{h=h->next;qa=h;}
if(h->paiming!=0&&qa->paiming==0&&h->xvhao!=ii->xvhao)
h=h->next;
if(h->paiming!=0&&h->xvhao==ii->xvhao)
break;}
if(h->paiming!=0&&h->xvhao==ii->xvhao)
break;
if((qa->defen)<=(h->defen))
qa=h;
h=h->next;
}
qa->paiming=b;
qa=p->next;h=p->next;
b++;
}
}
void zuizhongpaiming(geshou *pgeshou *last)
{ FILE *file=fopen(“singerFianl.dat““wb“);
int yu=0i=1;
geshou *h;
h=p->next;
fwrite(&last->xvhaosizeof(int)1file);
for(y=1;yxvhao+1;y++)
{
while(h)
{
if(h->paiming==i)
u=fwrite(hlen1file);
h=h->next;
}
h=p->next;
i++;
}
if(u==0)
printf(“错误!最终排名存档失败 - 上一篇:VC++俄罗斯方块完整源码
- 下一篇:实验一 词法分析 c语言
相关资源
- C++头文件转delphi工具 + 源码
- 国际象棋的qt源代码
- C++中头文件与源文件的作用详解
- C++多线程网络编程Socket
- VC++ 多线程文件读写操作
- 利用C++哈希表的方法实现电话号码查
- 移木块游戏,可以自编自玩,vc6.0编写
- C++纯文字DOS超小RPG游戏
- VC++MFC小游戏实例教程(实例)+MFC类库
- 连铸温度场计算程序(C++)
- 6自由度机器人运动学正反解C++程序
- Em算法(使用C++编写)
- libstdc++-4.4.7-4.el6.i686.rpm
- VC++实现CMD命令执行与获得返回信息
- 白话C++(全)
- C++标准库第1、2
- 大数类c++大数类
- C++语言编写串口调试助手
- c++素数筛选法
- C++ mqtt 用法
- 商品库存管理系统 C++ MFC
- c++ 多功能计算器
- C++17 In Detail
- 嵌入式QtC++编程课件
- 颜色识别形状识别STM103嵌入式代码
- c++ 邮件多附件群发
- c++ 透明代理(hookproxy)
- mfc 调用redis
- FTP客户端源码(c++)
- c++ 画图(14Qt-XPS)
川公网安备 51152502000135号
评论
共有 条评论