| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3834 人关注过本帖
标题:[求助]"利用单向链表实现简单的学生信息管理"是什么意思
只看楼主 加入收藏
百年不亮
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:789
专家分:0
注 册:2006-4-14
收藏
得分:0 
斑竹把这里当水区了?
2007-06-25 20:35
aipb2007
Rank: 8Rank: 8
来 自:CQU
等 级:贵宾
威 望:40
帖 子:2879
专家分:7
注 册:2007-3-18
收藏
得分:0 
都被你们说的这么清楚,就只有纯支持个啦!

Fight  to win  or  die...
2007-06-25 20:41
killer_l
Rank: 2
等 级:新手上路
威 望:3
帖 子:1139
专家分:0
注 册:2007-5-25
收藏
得分:0 
刚开始学就有答辩了?

2007-06-25 20:42
百年不亮
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:789
专家分:0
注 册:2006-4-14
收藏
得分:0 
我们也搞过,就是你写了个程序,老师来提下问,关于具体实现中的某个细节.课程设计等的需要这样,防止学生抄别人的,老师没时间看源代码也只能这样.
2007-06-25 20:47
野比
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:24
帖 子:1627
专家分:516
注 册:2007-5-24
收藏
得分:0 
记得我以前做大实验...玩了3天游戏, 最后拷别人程序交差...
然后老师对我说 做的不错, 继续.. 对给我程序的人说 你的是抄他的吧?

这就是平时努力的结果...

女侠,约吗?
2007-06-25 21:00
killer_l
Rank: 2
等 级:新手上路
威 望:3
帖 子:1139
专家分:0
注 册:2007-5-25
收藏
得分:0 
以下是引用野比在2007-6-25 21:00:26的发言:
记得我以前做大实验...玩了3天游戏, 最后拷别人程序交差...
然后老师对我说 做的不错, 继续.. 对给我程序的人说 你的是抄他的吧?

这就是平时努力的结果...


2007-06-25 21:06
野比
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:24
帖 子:1627
专家分:516
注 册:2007-5-24
收藏
得分:0 
以下是引用killer_l在2007-6-25 21:06:52的发言:

平时为几十号人提供原始版本的好处就是最后的关键时刻老师会让你很轻松过..


女侠,约吗?
2007-06-25 21:14
xiongxueming
Rank: 1
来 自:四川
等 级:等待验证会员
帖 子:56
专家分:0
注 册:2007-6-10
收藏
得分:0 

单链表是通过指针调用的,你要是用的话我给你一个
#include<stdio.h>
#include<stdlib.h>
struct node
{
int id;
char name[10];
float english,math,computer,zongfen,pingjunfen;
struct node *next;
}*head;
void luru();
void shanchu();
void xiugai();
void xianshi();
void zongfenhepingjunfen();
void luru()
{
float a;
struct node *p,*q;
if(head==NULL)
{
head=(struct node *) malloc(sizeof(struct node));
head->next=NULL;
}
p=(struct node *) malloc(sizeof(struct node));
printf(" qingshuruxuehao:");
scanf("%d",&p->id);
printf(" qingshuruxingming:");
scanf("%s",&p->name);
for(;;)
{
printf(" qingshuruyingyu(0~100):");
scanf("%f",&a);
if(a<0||a>100)
{
printf(" shuruyingyuyouwu!\n");
continue;
}
else break;
}
p->english=a;
for(;;)
{
printf(" qingshurushuxue(0~100):");
scanf("%f",&a);
if(a<0||a>100)
{
printf(" shurushuxueyouwu!\n");
continue;
}
else break;
}
p->math=a;
for(;;)
{
printf(" qingshurujisuanji(0~100):");
scanf("%f",&a);
if(a<0||a>100)
{
printf(" shurujisuanjiyouwu!\n");
continue;
}
else break;
}
p->computer=a;
p->next=NULL;
q=head;
if(head->next==NULL)
{
head->next=p;
}
else
{
while(q->next!=NULL)
q=q->next;q->next=p;
}
}
void shanchu(n)
{
struct node *q1,*q2,*q3;
q1=head;
q3=q1;
if(head->next==NULL)
{
printf(" chengjibiaowujilu!\n");
}
else
{
while(q1->id!=n && q1->next!=NULL)
{
q3=q1;q1=q1->next;
}
if(q1->id==n)
{
q2=q3->next;
q3->next=q2->next;
free(q2);
}
else return;
}
}
void xiugai()
{
int n;
struct node *p;
float a;
p=(struct node *) malloc(sizeof(struct node));
p->next=NULL;
printf(" qingshuruyaoxiugaidexuehao:");
scanf("%d",&n);
p->id=n;
p=head;
if(p!=NULL)
{
while(p->id!=n && p->next!=NULL)
{
p=p->next;
}
if(p->id==n)
{
printf(" qingshuruxingming:");
scanf("%s",&p->name);
for(;;)
{
printf(" qingshuruyingyu(0~100):");
scanf("%f",&a);
if(a<0||a>100)
{
printf(" shuruyingyuyouwu!\n");
continue;
}
else break;
}
p->english=a;
for(;;)
{
printf(" qingshurushuxue(0~100):");
scanf("%f",&a);
if(a<0||a>100)
{
printf(" shuruyingyuyouwu!\n");
continue;
}
else break;
}
p->math=a;
for(;;)
{
printf(" qingshurujisuanji(0~100):");
scanf("%f",&a);
if(a<0||a>100)
{
printf(" shuruyingyuyouwu!\n");
continue;
}
else break;
}
p->computer=a;
}
else
printf(" xuehaobucunzai!\n");
}
else
printf(" xuehaobucunzai!\n");
}
void xianshi()
{
struct node *p;
p=head;
if(p->next==NULL)
{
printf(" chengjibiaowujilu!\n");
}
else
{
printf(" xuehao xingming yingyu shuxue jisuanji\n");
while(p->next!=NULL)
{
printf(" %d %s %3.2f %3.2f %3.2f\n",p->next->id,p->next->name,p->next->english,p->next->math,p->next->computer);
p=p->next;
}
}
}
void zongfenhepingjunfen()
{
struct node *p;
p=head;
p->zongfen=p->english+p->math+p->computer;
p->pingjunfen=p->zongfen/3;
p=head;
if(p->next==NULL)
{
printf(" chengjibiaowujilu!\n");
}
else
{
printf(" xuehao xingming zongfen pingjunfen\n");
while(p->next!=NULL)
{
printf(" %d %s %3.2f %3.2f\n",p->next->id,p->next->name,p->next->zongfen,p->next->pingjunfen);
p=p->next;
}
}
}
main()
{
int x,n;
for(;;)
{
printf(" chengjiguanli \n");
printf(" ----------------------------------------\n");
printf(" | 1.chengjiluru |\n");
printf(" | 2.chengjishanchu |\n");
printf(" | 3.chengjixiugai |\n");
printf(" | 4.chengjixianshi |\n");
printf(" | 5.jisuanzongfenhepingjunfen |\n");
printf(" | 0.tuichu! |\n");
printf(" ----------------------------------------\n");
printf(" qingshurugongnenghao:");
scanf("%d",&x);
if(x==1) luru();
if(x==2)
{
printf(" qingshuruyaoshanchudexuehao:");
scanf("%d",&n);
shanchu(n);
}
if(x==3) xiugai();
if(x==4) xianshi();
if(x==5) zongfenhepingjunfen();
if(x==0) break;
}
}


初見傾伈,再見癡伈。終日費伈,欲嘚芳伈。煞費苦伈,想嘚催伈。難道祢伈,鈈懂ωǒ伈!
2007-06-25 22:08
xiongxueming
Rank: 1
来 自:四川
等 级:等待验证会员
帖 子:56
专家分:0
注 册:2007-6-10
收藏
得分:0 

对了,上面的没有成绩查找,补充一下:
这是一个自定义的一个函数:只要加在里面就可以了,记得要在前面定义一 下,命令是void chazhao();
void chazhao()
{
int n;
struct node *p;
float a;
p=(struct node *) malloc(sizeof(struct node));
p->next=NULL;
printf(" qingshuruyaochazhaodexuehao:");
scanf("%d",&n);
p->id=n;
p=head;
if(p!=NULL)
{
while(p->id!=n && p->next!=NULL)
{
p=p->next;
}
if(p->id==n)
{
printf(" xuehao xingming yingyu shuxue jisuanji\n");
printf(" %d %s %3.2f %3.2f %3.2f\n",p->id,p->name,p->english,p->math,p->computer);
}
}
}
最后在主函数里面输入一条显示成绩查找的命令就可以了,命令是printf(" | 3.chengjichazhao |\n");
在主函数里面直接调用函数chazhao();
这样就可以了!


初見傾伈,再見癡伈。終日費伈,欲嘚芳伈。煞費苦伈,想嘚催伈。難道祢伈,鈈懂ωǒ伈!
2007-06-25 22:14
游乐园
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:671
专家分:0
注 册:2006-11-1
收藏
得分:0 

呵呵,整个都给写了, 你完全替他解决了问题


unicorn-h.spaces. ◇◆ sava-scratch.spaces.
2007-06-25 22:19
快速回复:[求助]"利用单向链表实现简单的学生信息管理"是什么意思
数据加载中...
 
   



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

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