| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 808 人关注过本帖
标题:[求助]项目题,大家来看下.
只看楼主 加入收藏
ting6love
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2007-9-27
收藏
 问题点数:0 回复次数:10 
[求助]项目题,大家来看下.

用C程序编写一个学生管理系统的应用软件
该软件的使用只能利用键盘操作来实现,功能的选择通过菜单显示给用户
通过输入不同功能的编号来实现对应的操作
具体功能如下:
1录入学员的信息
2删除学员的信息
3显示最大年龄的学员信息
4显示学员的平均年龄
5对学员按年龄降序排列
6退出程序

项目具体要求~~~~
创建一个结构体,用于存储学生的信息,包括学号,姓名,性别,年龄
创建一个全局变量,存储学生的个数
main()函数的功能实现
创建一个结构体数组,长度为100
声明其它相关变量
制作菜单功能
循环接受用户的输入,直到用户选择菜单6的退出功能
根据用户每次输入的菜单编号,调用对应的函数实现其功能

display()函数
当用户选择某项菜单编号之后,执行相应的功能,如果该功能需要显示所有学员的信息,则调用该函数
有一个结构体类型的数组作为参数,无返回值
根据实际录入的学员的个数,循环显示所有学员的信息

max()函数
当用户选择菜单3时,调用该函数,执行显示年龄最大的学员信息的功能
有一个结构体数组作为参数,无返回值
利用求最大值的算法,求出所有学员的年龄的最大值
显示年龄是所求出来的最大年龄的所有学员的信息

avg()函数
当用户选择菜单4时,调用该函数,求学员的平均年龄,并显示出来
有一个结构体数组作为参数,有一个整型的返回值
利用求平均值的算法,求出所有学员平均年龄
将平均年龄返回到主调函数,并在主调函数中显示该平均值

sort()函数
当用户选择菜单5时,调用该函数,对所有学员的年龄进行降序排序
有一个结构体数组作为参数,无返回值
利用选择排序法或冒泡排序发法根据学员的年龄进行降序排序
显示排序之后的所有学员的信息



小弟我是弄不出来了~~~~~只做了一半!~~

搜索更多相关主题的帖子: 项目 
2007-10-18 14:28
ting6love
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2007-9-27
收藏
得分:0 
难道帖子要沉底了~~~~~~!~~~~
2007-10-18 15:09
ting6love
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2007-9-27
收藏
得分:0 
沉了。。。帮顶吧~~~~~等到有狠人!
2007-10-18 16:41
jinxin3256
Rank: 1
等 级:新手上路
帖 子:196
专家分:0
注 册:2007-9-7
收藏
得分:0 
等一个月也没人会做的

代替leisure1980广告下: 群号45146331
2007-10-18 20:31
neverTheSame
Rank: 3Rank: 3
来 自:江西农业大学
等 级:新手上路
威 望:9
帖 子:1511
专家分:0
注 册:2006-11-24
收藏
得分:0 
这个程序比较简单.
楼主可以完成的.
如果有技术上的问题,可以提出来.

wap酷禾网(http://wap.),提供免费的、优质的、快捷的wap资源下载服务。
2007-10-19 00:17
boot2046
Rank: 2
等 级:新手上路
威 望:3
帖 子:168
专家分:0
注 册:2007-7-23
收藏
得分:0 
。。。。。作业题吧

Linux是简单的,你不需要成为天才也能理解这种简单,Windows是复杂的,就算你是天才也不能理解这种复杂
2007-10-19 09:22
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
要代码没有,要问题我们倒愿意帮你.

倚天照海花无数,流水高山心自知。
2007-10-19 10:46
ting6love
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2007-9-27
收藏
得分:0 

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define N 100
struct student
{
int num;
char name[50];
char sex;
int age;
};
int n=0;
void input(struct student ss[]);
void del(struct student deln[]);
void max(struct student maxx[]);
float avg(struct student avgn[]);
void sort(struct student minn[]);
void display(struct student dis[]);
void main()
{
struct student ss[N];
int change,x=0;
float savg;
do
{
printf("\t ╭────────────────────────────╮\n");
printf("\t ∣ 请根据菜单选择功能 ∣\n");
printf("\t |————————————————————————————|\n");
printf("\t | \t    1---录入学员信息             |\n");
printf("\t | \t    2---删除学员信息            |\n");
printf("\t | \t    3---显示最大年龄的学员信息         |\n");
printf("\t | \t    4---显示学员的平均年龄            |\n");
printf("\t | \t    5---对学员年龄降序排列  |\n");
printf("\t | \t    6---退出程序                |\n");
printf("\t ╰────────────────────────────╯\n");
printf("请输入功能编号:");
scanf("%d",&change);
switch(change)
{
case 1: input(ss);break;
case 2: del(ss);break;
case 3: max(ss);break;
case 4: savg=avg(ss);
printf("%d名学员的平均年龄是:%.3f\n",n,savg);break;
case 5: sort(ss);break;
case 6: exit(0);break;
default: printf("输入错误,请重新输入。\n");break;
}
}while(x<6);
}

void input(struct student sa[])
{
char answer;
do
{
printf("\n请输入学员信息\n");
printf("\n姓名:");
fflush(stdin);
gets(sa[n].name);
printf("性别(m or f):");
fflush(stdin);
sa[n].sex=getchar();
printf("年龄:");
scanf("%d",&sa[n].age);
n++;
printf("\n^^^^^^^^^^^^^^^^^^^^\n");
printf("是否继续录入?(y or n):");
fflush(stdin);
scanf("%c",&answer);
}while(answer=='y'||answer=='Y');
printf("\n本次录入的所有学员的信息如下\n");
display(sa);
}
void del(struct student deln[])
{
int i,num;
printf("请输入要删除学员的学号:");
scanf("%d",&num);
for(i=num-1;i<n;i++)
{
deln[i].num=deln[i+1].num;
strcpy(deln[i].name,deln[i+1].name);
deln[i].sex=deln[i+1].sex;
deln[i].age=deln[i+1].age;
}
printf("\n剩余学员的信息如下:\n");
printf("\n学号\t姓名\t性别\t年龄\t\n");
for(i=0;i<n-1;i++)
printf("\n%d\t%s\t%c\t%d\n",deln[i].num,deln[i].name,deln[i].sex,deln[i].age);
n--;
}
void max(struct student maxx[])
{
int i,maxage;
maxage=maxx[0].age;
printf("年龄最大的学员是:");
for(i=0;i<n;i++)
{
if(maxage<maxx[i].age)
maxage=maxx[i].age;
}
printf("\n学号\t姓名\t性别\t年龄\t\n");
printf("================================\n");
for(i=0;i<n;i++)
if(maxage==maxx[i].age)
printf("\n%d\t%s\t%c\t%d\n",i+1,maxx[i].name,maxx[i].sex,maxx[i].age);
}
float avg(struct student avgn[])
{
int i,sum=0;
float aavg;
for(i=0;i<n;i++)
sum+=avgn[i].age;
aavg=(float)sum/n;
return aavg;
}
void sort(struct student minn[])
{
int i,j,t;
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(minn[i].age<minn[j].age)
{
t=minn[i].age;
minn[i].age=minn[j].age;
minn[j].age=t;
}
printf("学员年龄从大到小排列顺序为:");
printf("\n学号\t姓名\t性别\t年龄\t\n");
printf("================================\n");
for(i=0;i<n;i++)
printf("\n%d\t%s\t%c\t%d\n",minn[i].num,minn[i].name,minn[i].sex,minn[i].age);
display(minn);
}
void display(struct student dis[])
{
int i;
printf("\n学号\t姓名\t性别\t年龄\t\n");
printf("================================\n");
for(i=0;i<n;i++)
{
dis[i].num=i+1;
printf("\n%d\t%s\t%c\t%d\n",dis[i].num,dis[i].name,dis[i].sex,dis[i].age);
}
}

搞定了~~~~跟大家分享一下。由于是出学,有不明白的地方多见谅~

2007-10-19 17:10
缘吇弹
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:地球
等 级:版主
威 望:43
帖 子:3038
专家分:27
注 册:2007-7-2
收藏
得分:0 
呵呵,LZ的精神挺不错嘛

Repeat  Life=Study;Until (death);
2007-10-19 17:12
ting6love
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2007-9-27
收藏
得分:0 
呵呵。。做完之后都不知道在哪加注释了~~~郁闷~~!!嘿嘿
2007-10-19 17:14
快速回复:[求助]项目题,大家来看下.
数据加载中...
 
   



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

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