C语言课程设计学生成绩管理系统完整

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

/* strcmp函数原型包含*/

#define N 100

/*定义最大学生人数为100*/

struct student /*学生结构体定义*/

{

char no[11]; /*学号,10位*/

char name[10];/*姓名,3个汉字*/

char grade[10];/*班级*/

char pro[20];/*专业*/

float score[5];/*储存5门功课的成绩*/

float ave;/*储存平均分*/

int year;/*入学年*/

}stu[N];

int num;

void panduani(int); /*通过i的值,判断信息要查找的信息是否存在*/ void output(); /*输出学生成绩函数(公共函数)*/

void init(); /*系统初始化函数*/

void newfile(); /*建立新的数据文件*/

void read1(); /*从数据文件中读取数据*/

void weihu(); /*维护界面函数*/

void new1(); /*新增一个学生成绩函数*/

void xiugai(); /*修改学生成绩*/

void xgcj(int); /*修改成绩*/

void delete1(); /*删除学生信息函数*/

void tongji(); /*统计界面函数*/

void tongji1(); /*计算每个学生平均分*/

void tongji2(); /*计算每门课程的平均分*/

void paixu1(); /*排序函数*/

void paino(); /*按学号排序*/

void paiave(); /*按平均分排序*/

void paidkcj(); /*按单科成绩排序*/

void change(int,int); /*交换结构体数组中的两个记录*/

void outputx(int); /*选择输出单科成绩*/

void find1(); /*查找界面函数*/

int find(char sno[]); /*按学号查找*/

int findname(char cname[]);/*按姓名查找*/

void findyear(int cyear); /*按入学年查找*/

void save(); /*保存文件*/

void stop(); /*停顿函数*/

void stop() /*停顿函数(公共函数)*/

{

printf("Press Any Key To Continue...\n");

getchar();

}

void output() /*输出学生成绩函数(公共函数)*/

{

int i,j;

printf("===================================================================\n"

printf("学号姓名班级专业入学年 C语言高数大物电路模电\n");

printf("===================================================================\n" );

for(i=0;i

{

printf("%s %s %s %s %d",stu[i].no,stu[i].name,stu[i].grade,stu[i]. pro,stu[i].year);

for(j=0;j<5;j++)

printf(" %.1f",stu[i].score[j]);

printf("\n");

}

stop();

}

void init() /*系统初始化函数 */

if(access("stu.dat",0)) /*判断文件是否存在*/

newfile(); /*若不存在,新建数据文件*/

else

read1(); /*若存在,读取数据*/

}

void newfile() /*建立新的数据文件 */

{

int i;

FILE *fp;

if((fp=fopen("stu.dat","wb"))==NULL) /*创建二进制文件*/

{

printf("创建文件失败,请重新运行程序.\n"); /*显示"创建文件失败,请重新运行程序"*/

exit(0); /*终止程序*/

}

printf("初次运行,进行数据初始化...\n");/*显示"初次运行,进行数据初始化..."*/

stop();

printf("请输入学生人数:");/*显示"请输入学生人数:"*/

scanf("%d",&num);

for(i=0;i

{

printf("请输入第 %d个学生的学号:",i+1); /*显示"请输入第i+1个学生的学号:"*/ getchar(); /*吃回车*/

gets(stu[i].no);

printf("姓名:"); /*显示"姓名:"*/

gets(stu[i].name);

printf("班级:"); /*显示"班级:"*/

gets(stu[i].grade);

printf("专业:"); /*显示"专业:"*/

gets(stu[i].pro);

printf("入学年n:");/*显示"入学年"*/

scanf("%d",&stu[i].year);

相关文档
最新文档