学生成绩管理系统
2011-09-01 21:21
204 查看
#include <stdio.h>
#include <stdlib.h>
#define N 10
void Sort(struct StudentInfo Student[]);//提出函数
///////////////////////////////
///首先定义一个结构
//////////////////////////////
struct StudentInfo
{
int StudentID; //学号
char StudentName[20]; //姓名
float StudentMath; //数学成绩
float StudentEnglish; //英语成绩
float StudentComputer;//计算机成绩
float StudentAve; //平均成绩
float StudentScore; //总成绩
};
int main(void)
{
struct StudentInfo Student
;//定义学生和中间的交换值
int i;
for(i=0;i<N;i++)
{
printf("请输入第%d个学生的学号\n",i+1);
scanf("%d",&Student[i].StudentID);//输入学号
printf("请输入第%d个学生的姓名\n",i+1);
scanf("%s",Student[i].StudentName);//输入学生姓名
printf("请输入第%d个学生的数学成绩\n",i+1);
scanf("%f",&Student[i].StudentMath);//输入学生成绩
printf("请输入第%d个学生的英语成绩\n",i+1);
scanf("%f",&Student[i].StudentEnglish);//输入学生英语成绩
printf("请输入第%d个学生的计算机基础的成绩\n",i+1);
scanf("%f",&Student[i].StudentComputer);//输入学生机算计成绩
Student[i].StudentScore = Student[i].StudentComputer+Student[i].StudentEnglish+Student[i].StudentMath;//邱总成绩
Student[i].StudentAve = Student[i].StudentScore/3;//求平均成绩
system("cls");
}
//排序
Sort(Student);
//输出
printf("名次\t学号\t姓名\t数学\t英语\t计算机\t总\t平均\t\n");
for(i=0;i<N;i++)
{
printf("%d\t",i+1);
printf("%d\t",Student[i].StudentID);
printf("%s\t",Student[i].StudentName);
printf("%.1f\t",Student[i].StudentMath);
printf("%.1f\t",Student[i].StudentEnglish);
printf("%.1f\t",Student[i].StudentComputer);
printf("%.1f\t",Student[i].StudentScore);
printf("%.1f\t",Student[i].StudentAve);
printf("\n");
}
return 0;
}
///////////////////////////////////////////
///冒泡排序
///////////////////////////////////////////
void Sort(struct StudentInfo Student[])
{
struct StudentInfo Tmp;
int i,j;
for(i=0;i<N;i++)
{
for(j=i;j<N;j++)
{
if(Student[i].StudentScore<Student[j+1].StudentScore)//判断总成绩大小,将第j个排成成绩最高
{
Tmp = Student[i];
Student[i]=Student[j+1];
Student[j+1] = Tmp;//交换顺序
}
}
}
}
#include <stdlib.h>
#define N 10
void Sort(struct StudentInfo Student[]);//提出函数
///////////////////////////////
///首先定义一个结构
//////////////////////////////
struct StudentInfo
{
int StudentID; //学号
char StudentName[20]; //姓名
float StudentMath; //数学成绩
float StudentEnglish; //英语成绩
float StudentComputer;//计算机成绩
float StudentAve; //平均成绩
float StudentScore; //总成绩
};
int main(void)
{
struct StudentInfo Student
;//定义学生和中间的交换值
int i;
for(i=0;i<N;i++)
{
printf("请输入第%d个学生的学号\n",i+1);
scanf("%d",&Student[i].StudentID);//输入学号
printf("请输入第%d个学生的姓名\n",i+1);
scanf("%s",Student[i].StudentName);//输入学生姓名
printf("请输入第%d个学生的数学成绩\n",i+1);
scanf("%f",&Student[i].StudentMath);//输入学生成绩
printf("请输入第%d个学生的英语成绩\n",i+1);
scanf("%f",&Student[i].StudentEnglish);//输入学生英语成绩
printf("请输入第%d个学生的计算机基础的成绩\n",i+1);
scanf("%f",&Student[i].StudentComputer);//输入学生机算计成绩
Student[i].StudentScore = Student[i].StudentComputer+Student[i].StudentEnglish+Student[i].StudentMath;//邱总成绩
Student[i].StudentAve = Student[i].StudentScore/3;//求平均成绩
system("cls");
}
//排序
Sort(Student);
//输出
printf("名次\t学号\t姓名\t数学\t英语\t计算机\t总\t平均\t\n");
for(i=0;i<N;i++)
{
printf("%d\t",i+1);
printf("%d\t",Student[i].StudentID);
printf("%s\t",Student[i].StudentName);
printf("%.1f\t",Student[i].StudentMath);
printf("%.1f\t",Student[i].StudentEnglish);
printf("%.1f\t",Student[i].StudentComputer);
printf("%.1f\t",Student[i].StudentScore);
printf("%.1f\t",Student[i].StudentAve);
printf("\n");
}
return 0;
}
///////////////////////////////////////////
///冒泡排序
///////////////////////////////////////////
void Sort(struct StudentInfo Student[])
{
struct StudentInfo Tmp;
int i,j;
for(i=0;i<N;i++)
{
for(j=i;j<N;j++)
{
if(Student[i].StudentScore<Student[j+1].StudentScore)//判断总成绩大小,将第j个排成成绩最高
{
Tmp = Student[i];
Student[i]=Student[j+1];
Student[j+1] = Tmp;//交换顺序
}
}
}
}
相关文章推荐
- C语言实现---学生成绩管理系统
- 学生成绩管理系统--servlet+jsp
- 【Java】学生成绩管理系统
- C#版本的学生成绩管理系统
- 学生成绩管理系统
- 课程设计之学生成绩管理系统
- C++学生成绩管理系统
- 学生成绩管理系统源程序
- 学生成绩管理系统(课程设计)
- 学生成绩管理系统
- 对学生成绩管理系统的介绍
- 学生成绩管理系统(给交作业的兄弟准备的)
- C语言 学生成绩管理系统
- 数据结构课程设计---学生成绩管理系统
- Java GUI学生成绩管理系统--管理员界面
- c语言制作的学生成绩管理系统 加链表
- c用链表实现学生成绩管理系统 MIS
- C语言--学生成绩管理系统
- Python——学生成绩管理系统
- 类实现学生成绩管理系统