| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 990 人关注过本帖, 1 人收藏
标题:用链表做一个打分系统!!!求助!!!!!
只看楼主 加入收藏
矿泉水wz
Rank: 1
等 级:新手上路
帖 子:61
专家分:0
注 册:2007-11-6
收藏(1)
 问题点数:0 回复次数:7 
用链表做一个打分系统!!!求助!!!!!
用链表实现一个有n个裁判打分系统,打分规则,在n个裁判打分以后计算时去掉一个最高分和最底分的平均分,某个或者某些裁判不打分或者打出不合理的分数,要求提示错误并重新开始打分。
搜索更多相关主题的帖子: 链表 系统 裁判 最高分 
2008-03-17 20:08
wrg0709
Rank: 1
来 自:ss
等 级:新手上路
帖 子:81
专家分:0
注 册:2007-12-3
收藏
得分:0 
我也刚学链表
 我试试

程序员的日子就是 泡面+电脑+床
2008-03-17 20:14
wrg0709
Rank: 1
来 自:ss
等 级:新手上路
帖 子:81
专家分:0
注 册:2007-12-3
收藏
得分:0 
刚写完
#include<stdio.h>
#include<stdlib.h>
struct a{
struct a *next;
double data;
}
main()
{
struct a *h,*p,*m,*q;
int i,n,s=0;
double x;
h=(struct a*)malloc(sizeof(struct a));
if(h==NULL)
printf("error");
printf("how many pingwei do you want.please enter a number\n");
scanf("%d",&n);
for(i=0;i<n;i++)
{
 printf("the %d pingwei ",i+1);
 scanf("%lf",&x);
 p=h;
 while(p!=NULL) p=p->next;
 m=(struct a *)malloc(sizeof(struct a));
 m->data=x;
 m->next=NULL;
 p=m;
}
p=h->next;
q=p->next;
m=q->next;
i=p->data>q->data?1:0;
if(i==0)
{
q=p;p=p->next;
}
while(m!=NULL)
{
if(p->data>m->data&&q->data>m->data)
     q=m;
 else
   p=m;
 m=m->next;
}
printf("the max score is %lf,the min score is %lf,\n now delete they",p->data,q->data);
m=h;
while(m->next!=p)
{
  m=m->next;
}
if(p->next==NULL)
 m->next=NULL;
else
 m->next=p->next;
m=h;
while(m->next!=q)
{
  m=m->next;
}
if(q->next=NULL)
 m->next=NULL;
else
 m->next=q->next;
p=h->next;
while(p!=NULL)
{
  s+=p->data;
  p=p->next;
}
printf("qu diao zui gao fen he zui di fen %lf",s/n-2);
}

程序员的日子就是 泡面+电脑+床
2008-03-18 13:52
wrg0709
Rank: 1
来 自:ss
等 级:新手上路
帖 子:81
专家分:0
注 册:2007-12-3
收藏
得分:0 
不好意思忘记调试了

程序员的日子就是 泡面+电脑+床
2008-03-18 13:55
xianshizhe111
Rank: 1
等 级:新手上路
帖 子:1451
专家分:0
注 册:2007-12-8
收藏
得分:0 
给你鼓励.
2008-03-18 13:57
wrg0709
Rank: 1
来 自:ss
等 级:新手上路
帖 子:81
专家分:0
注 册:2007-12-3
收藏
得分:0 
能否帮个忙 不清楚 那问题

程序员的日子就是 泡面+电脑+床
2008-03-18 14:04
wrg0709
Rank: 1
来 自:ss
等 级:新手上路
帖 子:81
专家分:0
注 册:2007-12-3
收藏
得分:0 
#include<stdio.h>
#include<stdlib.h>
struct a{
struct a *next;
double data;
}
main()
{
struct a *h,*p,*m,*q;               
int i,n,s=0;
double x;

/*声明头指针*/

h=(struct a*)malloc(sizeof(struct a));               
if(h==NULL)
printf("error");

/*产生链表*/

printf("how many pingwei do you want.please enter a number\n");
scanf("%d",&n);
for(i=0;i<n;i++)
{
 printf("the %d pingwei ",i+1);
 scanf("%lf",&x);
 p=h;
 while(p!=NULL) p=p->next;
 m=(struct a *)malloc(sizeof(struct a));
 m->data=x;
 m->next=NULL;
 p=m;
}

/*p指向最大的分数,q指向最小的分数*/

p=h->next;
q=p->next;
m=q->next;
i=p->data>q->data?1:0; /* 不清楚那个大 所以用这个*/
if(i==0)   
{
q=p;p=p->next;
}
while(m!=NULL)
{
if(p->data>m->data&&q->data>m->data)
     q=m;
 else
   p=m;
 m=m->next;
}

/*删除那俩个节点*/

printf("the max score is %lf,the min score is %lf,\n now delete they",p->data,q->data);

/*删除大的结点*/                  /*有没什么好的方法 把这俩个结合起来?*/

m=h;
while(m->next!=p)
{
  m=m->next;
}
if(p->next==NULL)
 m->next=NULL;
else
 m->next=p->next;

/*删除小的结点*/

m=h;
while(m->next!=q)
{
  m=m->next;
}
if(q->next=NULL)
 m->next=NULL;
else
 m->next=q->next;
p=h->next;

/*求和和平均*/
while(p!=NULL)
{
  s+=p->data;
  p=p->next;
}
printf("qu diao zui gao fen he zui di fen %lf",s/n-2);
}

程序员的日子就是 泡面+电脑+床
2008-03-18 14:16
wrg0709
Rank: 1
来 自:ss
等 级:新手上路
帖 子:81
专家分:0
注 册:2007-12-3
收藏
得分:0 
本人书本上的使用方法经本人调试是错误的 所以不敢用方法写, 这本书直接讲的数据结构 还不是很清楚有些语法
   这个结果 怎么得不出来 还望搞人指点指点

程序员的日子就是 泡面+电脑+床
2008-03-18 14:19
快速回复:用链表做一个打分系统!!!求助!!!!!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018284 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved